Sunteți pe pagina 1din 4

SUBPROGRAME IN C++

1) Să se definească o funcție pentru calcularea factorialului și să se calculeze cu ajutorul ei combinări


din n elemente luate câte m. Numerele naturale m și n sunt date. Formula de calcul:

n!
Cmn = .
m! ( n−m ) !

2) Definind funcția-putere, să se calculeze valoarea expresiei:

S=1+0,5 2+ 0,54 +0,56 + 0,58 .

3) Să se definească funcțiile max(a, b) și min(a, b), care returnează respectiv cel mai mare și cel mai
mic dintre numerele reale a și b, apoi să se calculeze valoarea expresiei:

a) S=max(min( a1 , a2 ),max( a3 , a4 ))+min(max( a5 , a6 ),min( a7 , a8 )), unde


a1 , a2 , … , a8 sunt numere reale date;

b) T=min( a1 , a2 )+min( a3 , a4 )+...+min( a9 , a10 )+max( a1 , a2 )+max( a3 , a4 )+...+max(


a9 , a10 ) unde a1 , a2 , … , a10 sunt numere reale date.

4) Se dă o mulțime de puncte în plan. Să se calculeze cea mai mică distanță dintre oricare 2 puncte
posibile.

5) a) Să se descrie o funcție care va returna numărul de divizori proprii ai numărului natural dat
(divizorii proprii sunt diferiți de 1 și de numărul dat).

b) Utilizând funcția din a), să se afișeze numerele naturale mai mici decât 10 000, care au exact n
divizori proprii, unde n este un număr natural dat mai mic decât 20.

6) De la tastatură se citește un număr întreg n, n<100 000. Elaborați un program cu funcții prin
intermediul căruia se va determina:

a) Numărul de cifre;
b) Numărul de cifre pare;
c) Numărul de cifre impare;
d) Suma cifrelor;
e) Cifra maximă;
f) Cifra minimă;
g) Media aritmetică a cifrelor;
h) Cifrele care se repetă de cel puțin două ori;
i) Cifrele numărului separate printr-un sigur spațiu;
j) Divizorii numărului;
k) Inversul numărului;
l) Mesajul ”PRIM”, dacă numărul este număr prim;
m) Cel mai mare număr posibil creat din aceste cifre.
7) De la tastatură se citesc două numere întregi. Elaborați un program cu funcții prin intermediul căruia
se va determina:

a) Suma numerelor;
b) Produsul numerelor;
c) Media aritmetică a numerelor;
d) Cel mai mare divizor comun;
e) Cel mai mic multiplu comun;
f) Numărul minim;
g) Numărul maxim;
h) Suma numerelor în formatul a+b=c, dacă a și b reprezintă numerele citite;
i) Produsul numerelor în formatul a*b=c, dacă a și b reprezintă numerele citite;
j) Toți divizorii comuni;
k) Cinci multipli comuni;
l) Cifrele care se conțin în ambele numere;
m) Cifrele care sunt în primul număr și nu sunt în al doilea număr;
n) Va afișa mesajul ”PRIETENE”, dacă numerele sunt prietene. Două numere se numesc prietene,
dacă numărul de divizori este același.
8) De la tastatură se citesc trei numere întregi. Elaborați un program cu funcții prin intermediul căruia:

a) Se va determina cel mai mare divizor comun al numerelor;


b) Se va determina cel mai mic multiplu comun al numerelor;
c) Se va determina valoarea maximă;
d) Se va determina valoarea minimă;
e) Se vor afișa toți divizorii comuni;
f) Se vor afișa cei mai mici trei multipli comuni.
g) Se va verifica dacă numerele citite pot fi lungimile laturilor unui triunghi;
g.1. Se va determina aria triunghiului, dacă valorile citite pot forma un triunghi;
g.2.Se va determina perimetrul triunghiului, dacă valorile citite pot forma un triunghi;
2
h) Se vor afișa soluțiile reale ale ecuației a x + bx+ c=0 dacă a, b, c reprezintă coeficienții
ecuației.
9) De la tastatură se citesc două numere întregi. Pentru fiecare dintre următoarele cazuri să se creeze
câte o procedură, prin intermediul căreia se va determina:

a) Suma numerelor;
b) Produsul numerelor;
c) Media aritmetică a numerelor;
d) Cel mai mare divizor comun;
e) Cel mai mic multiplu comun;
f) Numărul minim;
g) Numărul maxim.
10) Se consideră tipul de date timp (ora:min:sec). Elaborați un program prin intermediul căruia se va
crea câte o procedură pentru:

a) Citirea timpului de la tastatură;


b) Afișarea timpului la ecran, în formatul ora:min:sec, dacă 0≤sec≤59 și 0≤min≤59.
c) Determinarea sumei dintre cele două variabile de tipul timp;
d) Determinarea diferenței dintre cele două variabile de tipul timp;
e) Determinarea valorii maximale;

SUBPROGRAME IN C++

Nr.ord Nume 1 2 3

1 Apostol 1 2 3a
2 Babără 6i 6j 6k
3 Beșleu 1 2 3a
4 Boian 3b 4 5a
5 Bujac 3b 4 5a
6 Chetraru 9a 9b 9c
7 Coman 7k 7l 7m
8 Condorachi 7k 7l 7m
9 Cucu 7n 8a 8b
10 Dumitrașcu 5b 6a 6b
11 Fialcovschi 6l 6m 7a
12 Galafton 5b 6a 6b
13 Ganea 9a 9b 9c
14 Ghelețchi 7n 8a 8b
15 Godovaniuc 9d 9e 9f
16 Gonța 6c 6d 6e
17 Guțu 9d 9e 9f
18 Harpailă 9g 10a 10b
19 Marandici 6l 6m 7a
20 Mazur 6c 6d 6e
21 Moraru B 7b 7c 7d
22 Moraru I 9g 10a 10b
23 Morcov 7b 7c 7d
24 Orescu 8c 8d 8e
25 Pasecinic 8c 8d 8e
26 Pisaniuc 6f 6g 6h
27 Plămădeală 7e 7f 7g
28 Roșioru 7h 7i 7j
29 Rusu 6f 6g 6h
30 Rutcovschi 7h 7i 7j
31 Sajin 10c 10d 10e
32 Țîbîrnă 6i 6j 6k
33 Tomacu 8f 8g 8h
34 Verstiuc 8f 8g 8h
35 Vicol 7e 7f 7g

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