Sunteți pe pagina 1din 1

Subprograme

1. Scriei definiia complet a subprogramului numar, cu trei parametri, care primete prin
intermediul parametrului n un numr natural format din cel mult 9 cifre, iar prin intermediul
parametrilor c1 i c2 cte o cifr nenul. Subprogramul caut fiecare apariie a cifrei c1 n n,
i dac aceasta apare, o nlocuiete cu c2. Subprogramul furnizeaz tot prin n numrul astfel
obinut. Dac cifra c1 nu apare n n, atunci valoarea lui n rmne nemodificat.
Exemplu: pentru n=149448, c1=4 i c2=2, valoarea furnizat prin n va fi 129228.
2. Scriei definiia complet a subprogramului f, care primete prin intermediul
parametrului n un numr natural nenul (2n200), iar prin intermediul parametrului a un tablou
unidimensional care conine n valori ntregi, fiecare dintre aceste valori ntregi avnd cel mult
patru cifre. Subprogramul returneaz valoarea 1 dac diferena dintre elementul maxim i
elementul minim din tablou este mai mare dect 1000, altfel valoarea returnat va fi 0.

3. Scriei definiia complet a subprogramului numar, cu patru parametri, care primete


prin intermediul parametrului n un numr natural format din cel mult 9 cifre, iar prin intermediul
parametrilor c1 i c2 cte o cifr, cu proprietatea c1<c2; subprogramul furnizeaz prin
intermediul celui de al patrulea parametru, x, o valoare egal cu suma cifrelor lui n care aparin
intervalului nchis [c1;c2].
Exemplu: pentru n=123, c1=2 i c2=7, valoarea furnizat prin x va fi 5.

4. Se consider subprogramul CMMDC care primete prin cei doi parametri, x i y, dou
numere naturale (1x10000, 1y10000) i returneaz cel mai mare divizor comun al lor.
a) Scriei numai antetul subprogramului CMMDC.
b) Fiierul text NUMERE.IN conine, pe fiecare linie, cte dou numere naturale nenule mai
mici sau egale dect 10000, desprite printr-un spaiu, reprezentnd numitorul i numrtorul
cte unei fracii. Scriei un program C/C++ care, pentru fiecare linie k din fiierul NUMERE.IN,
citete numitorul i numrtorul fraciei de pe aceast linie i scrie n fiierul text
NUMERE.OUT , tot pe linia k, numitorul i numrtorul acestei fracii, adus la forma
ireductibil, ca n exemplu. Se vor utiliza apeluri apeluri utile ale subprogramului CMMDC.

Exemplu: dac fiierul NUMERE.IN are atunci fiierul NUMERE.OUT va avea


coninutul de mai jos: urmtorul coninut:
12 14 67
11 12 11 12
22 11
48 12

5. Se consider subprogramul CMMMC care primete prin cei doi parametri, x i y, dou
numere naturale (1x10000, 1y10000) i returneaz cel mai mic multiplu comun al lor.
a) Scriei numai antetul subprogramului CMMMC.
b) Fiierul text NUMERE.IN conine, pe fiecare linie, cte dou numere naturale nenule mai
mici sau egale dect 10000, desprite printr-un spaiu. Scriei un program C/C++ care, pentru
fiecare linie k din fiierul NUMERE.IN, citete cele dou numere de pe aceast linie i scrie n
fiierul text NUMERE.OUT , tot pe linia k, cel mai mic multiplu comun al acestora, ca n
exemplu. Se vor utiliza apeluri utile ale subprogramului CMMMC.

Exemplu: dac fiierul NUMERE.IN are atunci fiierul NUMERE.OUT va avea


coninutul de mai jos: urmtorul coninut:
12 14 84
11 12 132
48 8

S-ar putea să vă placă și