Documente noi - cercetari, esee, comentariu, compunere, document
Documente categorii

Probleme rezolvate - structuri repetitive

Probleme rezolvate - structuri repetitive

Aplicatii simple cu while

1.      Se citesc numere reale pozitive de la tastatura, pana la intalnirea numarului 0. Sa se afiseze suma numerelor citite.

varianta WHILE

#include <iostream.h>

#include <conio.h>

void main()

cout<<'S='<<S;

getch();

varianta DO WHILE



#include <iostream.h>

#include <conio.h>

void main()

while (x!=0);

cout<<'S='<<S;

getch();

2.      Se citesc n numere intregi. Sa se calculeze suma numerelor pozitive si cate numere impare sunt.

varianta FOR

#include <iostream.h>

#include <conio.h>

void main()

cout<<'S='<<S<<endl;

cout<<'numarul numerelor impare='<<contor;

getch();

varianta WHILE

#include <iostream.h>

#include <conio.h>

void main()

cout<<'S='<<S<<endl;

cout<<'numarul numerelor impare='<<contor;

getch();

varianta DO WHILE

#include <iostream.h>

#include <conio.h>

void main()

while(i<=n);

cout<<'S='<<S<<endl;

cout<<'numarul numerelor impare='<<contor;

getch();

3.      Se citesc caractere pana la intalnirea caracterului '*'. Sa se numere cate vocale 'a' s-au citit.

#include <iostream.h>

#include <conio.h>

void main()

cout<<'vocala a ';

if (na==0) cout<<'nu s-a citit';

else if (na==1) cout<<'s-a citit o data';

else cout<<'s-a citit de '<<na<<' ori';

getch();

4.      Se citeste un numar intreg n. Se citesc apoi numere reale care se insumeaza. Citirea se opreste cand suma este mai mare sau egala cu numarul n. Sa se afiseze cate numere au fost citite si suma lor.

Ex: pentru n=5 citim 2.5 ; -1 ; 3 ; 0.45 ; -2 ; 10 se va scrie suma=12.95; contor=6

#include<iostream.h>

#include<conio.h>

void main()

while (S<n);

cout<<'Suma='<<S<<' contor='<<contor;

getch();

5.      Se citesc numere naturale pana la citirea consecutiva a doua numere egale. Se cere sa se calculeze suma numerelor (fara a lua in considerare ultimul numar citit).

Ex: pt 3,14,5,19,10,10 va afisa s=3+14+5+19+10

#include<iostream.h>

#include<conio.h>

void main()

cout<<'suma='<<s<<endl;

getch();

6.      Se citesc caractere pana se citesc consecutiv doua caractere identice. Se cere sa se determine cate caractere sunt litere si cate caractere sunt cifre dintre cele citite. Ultima litera nu se ia in considerare.

#include<iostream.h>

#include<conio.h>

void main()

if ((x>='a' && x<='z')||(x>='A' && x<='Z')) nrlit++; //nu ia ultima litera

else if (x>='0' && x<='9') nrcif++;

cout<<'numarul de litere:'<<nrlit<<endl;

cout<<'numarul de cifre:'<<nrcif;

getch();

7.      Se citesc numere intregi pana se citeste numarul 12345. Sa se determine cate din numerele citite sunt pozitive, cate negative si cate sunt egale cu zero.

#include<iostream.h>

#include<conio.h>

void main()

cout<<'nr. negative:'<<n<<endl;

cout<<'nr. pozitive:'<<p<<endl;

cout<<'nr. zero:'<<z<<endl;

getch();

8.      Se citesc numere intregi pana la intalnirea numarului 0. Sa se calculeze media aritmetica a numerelor pozitive citite.

#include<iostream.h>

#include<conio.h>

void main()

cout<<'x='; cin>>x;

}

if (k>0) cout<<'media nr pozitive:'<<(float)s/k;

else cout<<'nu se poate calcula media';

getch();

9.      Se citesc numere pana la citirea numarului 0. Se cere sa se calculeze media aritmetica a cate trei numere citite consecutiv. Se citesc cel putin trei numere.

Ex : pt. numerele 2 2 3 5 7 0 deci medii (2,2,3) (2,3,5) (3,5,7)

#include<iostream.h>

#include<conio.h>

void main()

}

}

getch();

10.   Sa se calculeze produsul a*b a doua numere intregi a si b, fara sa se foloseasca operatorul de inmultire.

#include<iostream.h>

#include<conio.h>

int i,a,b,p=0,semn=1;

void main()

for(i=1;i<=b;i++)

p=p+a;

cout<<'produsul este:'<<semn*p; //daca am schimbat semnul lui b revin si-l corectez

getch();

11.   Sa se calculeze catul si restul impartirii a doua numere naturale folosind procedeul de scadere repetata a impartitorului.

Ex: D=3 I=8 => C=0 R=3 si se afisaza 3=8*0+3

D=8 I=3 => C=1+1 R=2 si se afisaza 8=3*2+2

#include<iostream.h>

#include<conio.h>

void main()

while(D<0);

d=D;

do while(I<=0);

C=0;

while(D>=I)

R=D;

cout<<d<<'='<<I<<'*'<<C<<'+'<<R;

getch();

Aplicatii simple cu for

12.   Se citeste un numar natural n. Se cere sa se afiseze numerele de la 1 la n in ordine crescatoare.

#include<iostream.h>

#include<conio.h>

void main()

13.   Se citeste un numar natural n. Se cere sa se afiseze numerele de la n la 1 in ordine descrescatoare.

#include<iostream.h>

#include<conio.h>

void main()

14.   Se citeste un numar natural n. Se cere sa se afiseze numerele de la n la 1 in ordine descrescatoare din 2 in 2.

#include<iostream.h>

#include<conio.h>

void main()

15.   Sa se afiseze numerele mai mici decat n care sunt patrate perfecte.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

16.   Sa se afiseze cuburile perfecte mai mici decat un numar n citit de la tastatura.

#include<iostream.h>

#include<conio.h>

unsigned int n,x;

void main()

17.   Se citesc n perechi de numere naturale. Sa se afiseze cate prechi au proprietatea ca ambele numere din prereche sunt pare.

Ex pt n=3 si perechile de numere

12 13

12 14

6 7

va afisa 1 deoarece perechea 12 14 indeplineste coditiile cerute

#include<iostream.h>

#include<conio.h>

void main()

cout<<'nr de perechi pare este:'<<k<<endl;

getch();

18.   Se citeste un numar natural n. Se cere sa se afiseze produsul primelor n numere naturale.

#include<iostream.h>

#include<conio.h>

void main()

19.   Se citeste un numar natural n. Se cere sa se afiseze suma primelor n numere naturale.

#include<iostream.h>

#include<conio.h>

void main()

20.   Se citeste un numar natural n si apoi n numere. Se cere sa se calculeze suma numerelor impare si pozitive citite.

#include<iostream.h>

#include<conio.h>

void main()

cout<<'suma este:'<<s;

getch();

21.   Se citeste un numar natural n. Se cere sa se afiseze suma patratelor primelor n numere naturale.

#include<iostream.h>

#include<conio.h>

void main()

22.   Se citeste un numar natural n. Se cere sa se calculeze suma: S=1+1/2+1/3+1/4++1/n

#include<iostream.h>

#include<conio.h>

void main()

23.   Se citeste un numar natural n si un numar real x. Se cere sa se calculeze suma: S=1+x+x2+x3+x4++xn

varianta cu calculul puterilor lui x cu functia pow

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

varianta cu calculul puterilor lui x pe parcurs

#include<iostream.h>

#include<conio.h>

void main()

cout<<'suma este:'<<s;

getch();

24.   Se citeste un numar natural n si un numar real x. Se cere sa se calculeze suma: S=1-x+x2-x3+x4-+(-1) nxn

#include<iostream.h>

#include<conio.h>

void main()


cout<<'suma este:'<<s;

getch();


25.   Se citeste un numar natural n. Se cere sa se calculeze suma factorialelor primelor n numere neturale:

S=1+1*2+1*2*3+1*2*3*4+.+11*2*3*.*n

#include<iostream.h>

#include<conio.h>

void main()

cout<<'suma este:'<<s;

getch();

26.   Sa se calculeze suma pentru n numar natural nenul si x numar real:

S=-1+x/2!-x2/3!+x3/4!-+(-1)n*x(n-1)/n!

#include<iostream.h>

#include<conio.h>

void main()

cout<<'suma este:'<<s;

getch();

27.   Se citesc numere naturale (cel putin doua numere) pana se citeste numarul 0. Sa se afiseze cele mai mari doua elemente citite.

#include<iostream.h>

#include<conio.h>

void main()

else if (max1>x && max2<x)

max2=x;

}

cout<<'maximul1 este:'<<max1<<endl;

cout<<'maximul2 este:'<<max2<<endl;

getch();

28.   Sa se determine maximul din n numere reale citite succesiv de la tastatura.

#include <iostream.h>

#include <conio.h>

void main()

cout<<'max='<<max;

getch();

29.   Sa se afiseze succesiunea de numere, de exemplu pt n=5

1

1 2

1 2 3

1 2 3 4

1 2 3 4 5

#include<iostream.h>

#include<conio.h>

void main ()

getch ();

30.   Sa se afiseze succesiunea de numere, de exemplu pt n=5

5 4 3 2 1

4 3 2 1

3 2 1

2 1

1

#include<iostream.h>

#include<conio.h>

void main ()

getch ();

31.   Sa se afiseze succesiunea de numere, de exemplu pt n=5



5 5 5 5 5

4 4 4 4

3 3 3

2 2

1

#include<iostream.h>

#include<conio.h>

void main ()

getch ();

32.   Sa se afiseze succesiunea de numere, de exemplu pt n=5

1

2 1

1 2 3

4 3 2 1

1 2 3 4 5

#include<iostream.h>

#include<conio.h>

void main ()

else

getch ();

33.   Afisati urmatoarea secventa de numere, pentru un numar natural n citit.

Ex pt n=7

1 2 3 4 5 6 7

1 2 3 4 5 6

1 2 3 4 5

1 2 3 4

1 2 3

1 2

1

#include<iostream.h>

#include<conio.h>

int n,i,j;

void main()

getch();

Probleme cu cifrele numarului

34.   Sa se calculeze suma cifrelor unui numar natural n.

Ex: pentru n=1203 => S=3+0+2+1=6

#include<iostream.h>

#include<conio.h>

void main()

cout<<'S='<<S;

getch();

35.   Se da un numar natural nenul care are maxim 9 cifre. Scrieti un program care sa afiseze media aritmetica a cifrelor sale.

#include<iostream.h>

#include<conio.h>

void main()

cout<<'media aritmetica=';

if (S) cout<<((float)S/contor);

else cout<<S;

getch();

36.   Se citeste un numar natural n si o cifra c. Sa se afle de cate ori apare cifra in numar.

#include<iostream.h>

#include<conio.h>

void main()

cout<<'numar aparitii='<<contor;

getch();

37.   Se citesc, pe rand, cifrele unui numar natural (cu cel mult 9 cifre). Sa se reconstituie numarul intr-o variabila de tip long.

#include<iostream.h>

#include<conio.h>

void main()

} while(contor<nr);

cout<<'n='<<n;

getch();

38.   Se citesc doua numere naturale. Sa se afiseze cifrele care coincid (ca pozitie si ca valoare) si numarul lor.

#include<iostream.h>

#include<stdio.h>

#include<conio.h>

void main()

n/=10; m/=10;

}

if(contor>0)

if(contor==1) cout<<'n o pozitie';

else cout<<'n'<<contor<<' pozitii';

else cout<<'nici o pozitie';

getch();

39.   Se citeste un numar natural n. Sa se verifice daca este palindrom. Un numar este palindrom daca coincide cu inversul sau. Inversul unui numar este numarul obtinut prin inversarea cifrelor sale.

Ex: numarul 12321 este palindrom deoarece inversul sau este 12321

numarul 1234 nu este palindrom deoarece inversul sau este 4321

#include<iostream.h>

#include<conio.h>

void main()

cout<<n;

if (n==inv) cout<<' este palindrom';

else cout<<' nu este palindrom';

getch();

40.   Sa se scrie un program care calculeaza cifra de control a unui numar natural. Cifra de control se calculeaza ca suma cifrelor sale, apoi suma cifrelor numarului obtinut, ., pana se obtine un numar format dintr-o singura cifra.

Ex pt. numarul 1299477 => 39 => 12 => 3 (care este cifra de control)

#include<iostream.h>

#include<conio.h>

void main()

cout<<' => '<<s<<endl;

n=s;

}

cout<<'cifra de control:'<<s;

getch();

41.   Se citeste un numar de maxim 9 cifre. Se cere sa se afle cifra de valoare maxima.

#include<iostream.h>

#include<conio.h>

void main()

cout<<'cifra de valoare maxima:'<<max<<endl;

getch();

42.   Se citeste un numar de maxim 9 cifre. Se cere sa se afle cate cifre pare si cate cifre impare are.

#include<iostream.h>

#include<conio.h>

void main()

cout<<'nr de cifre pare:'<<kp<<endl;

cout<<'nr de cifre impare:'<<ki<<endl;

getch();

43.   Se citeste un numar n. Sa se afiseze cifra de rang k a lui n (a k-a cifra de la dreapta la stanga).

#include<iostream.h>

#include<conio.h>

void main()

if (aux==0 && i<k) cout<<'numarul nu are destule cifre';

else cout<<'cifra de rang k '<<aux%10;

getch();

44.   Sa se calculeze inversul sumei cifrelor unui numar natural n.

#include<iostream.h>

#include<conio.h>

void main()

cout<<'suma cifrelor numarului: '<<s;

//calculez inversul sumei cifrelor

inv=0;

while (s)

cout<<' inversul sumei: '<<inv;

getch();

45.   Se citeste un numar k!=0 si un sir de numere intregi pana la intalnirea numarului 0. Se cere sa se afiseze cate dintre numerele din sir au suma cifrelor egala cu k.

ex k=6 si numerele 34 51 33 15 87 105 0 =>4 dintre numere au suma cifrelor 6

#include<iostream.h>

#include<conio.h>

void main()

if (s==k) contor++;

}while (n!=0);

cout<<'numarul de numere care au suma cifrelor k: '<<contor;

getch();

46.   Sa se gaseasca toate numerele de doua cifre care au proprietatea ca inversul patratului fiecaruia este egal cu patratul inversului.

#include<iostream.h>

#include<conio.h>

void main()

aux=n;

inv=0; //inversul lui n (pe care il retin in aux)

while (aux)

pinv=inv*inv; //patratul inversului

if (invp==pinv) cout<<n<<' ';

}

getch();

47.   Se introduce de la tastatura un sir de n numere naturale. Se cere sa se afiseze catul si restul impartirii dintre suma numerelor si suma cifrelor sumei numerelor.

#include<iostream.h>

#include<conio.h>

void main()

aux=sn;

sc=0; //suma cifrelor sumei numerelor

while (aux)

cout<<'nsuma numerelor:'<<sn;

cout<<'nsuma cifrelor sumei numerelor:'<<sc;

cout<<'nrestul='<<sn%sc<<' catul='<<sn/sc;

getch();

48.   Se citesc numere pana la citirea numarului 0. Se cere sa se afiseze tripletele care au proprietatea ca al doilea si al treilea sunt egale cu catul respectiv restul impartirii intre primul si suma cifrelor sale.

Ex 13 3 1

nrcat rest

#include<iostream.h>

#include<conio.h>

void main()

a=x/s;

b=x%s;

if (a==y && b==z )

cout<<x<<' '<<y<<' '<<z<<endl;

x=y;

y=z;

}

getch();

49.   Sa se afiseze toate numerele mai mici decat n care sunt egale cu suma patratelor cifrelor lor.

#include<iostream.h>

#include<conio.h>

void main()

if (x==s) cout<<x<<' ';

}

getch();

50.   Se citesc numere pana la citirea lui 0. Sa se afiseze perechile de numere citite consecutiv care au proprietatea ca au acelasi numar de aparitii al cifrei k in patratul lor.

#include<iostream.h>

#include<conio.h>

void main()

py=y*y;

cout<<py<<endl;

ny=0;

while (py) //descompun in cifre patratul numarului y

if (nx==ny) cout<<x<<' '<<y<<endl;

x=y;

}

getch();

51.   Sa se afiseze toate numerele naturale mai mici decat n care au proprietatea ca paratul si cubul fiecaruia au cel putin o cifra comuna.

#include<iostream.h>

#include<conio.h>

void main()

aux=aux/10;

p=p/10;

}

}

getch();

52.   Se citesc numere pana la citirea lui 0. Sa se afiseze perechile de numere citite consecutiv care au proprietatea ca suma cifrelor primului numar este para si a celui de-al doilea e impara.

#include<iostream.h>

#include<conio.h>

void main()

sy=0;

while (py) //descompun in cifre patratul numarului y

if (sx%2==0 && sy%2==1) cout<<x<<' '<<y<<endl;

x=y;

}

getch();

53.   Sa se afiseze toate numerele naturale mai mici decat n care au proprietatea ca patratul si cubul fiecaruia au cel putin o cifra comuna; pentru fiecare numar gasit sa se afiseze cate cifre sunt comune si care sunt acelea.

#include<iostream.h>

#include<conio.h>

void main()

if (gasit==1)

p=p/10;

}

cout<<'are '<<k<<' cifre comune'<<endl;

}

getch();

54.   Se citeste un numar natural. Se cere sa se verifice daca numarul e bine ordonat crescator (cifrele numarului sunt

in ordine strict crescatoare ex. 2489 este bine ordonat crescator).

#include<iostream.h>

#include<conio.h>

void main()

if(ok==1) cout<<'nr e bine ordonat crescator'<<endl;

else cout<<'nr nu e bine ordonat crescator'<<endl;

getch();

55.   Sa se afiseze toate numerele mai mici decat n care au suma cifrelor un numar impar.

Ex: n=15 => 1 3 5 7 9 10 12 14

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

if (s%2==1) cout<<x<<' ';



}

getch();

56.   Sa se afiseze toate numerele palindrom din intervalul [a,b].

Ex. a=100, b=300 se va afisa 101 111 121 131 . 292

#include<iostream.h>

#include<conio.h>

void main()

if (x==inv) cout<<x<<' ';

}

getch();

57.   Se citesc doua numere naturale m si n. Se cere sa se genereze toate numerele din intervalul [m,n] care au proprietatea ca produsul cifrelor este un patrat perfect.

#include<iostream.h>

#include<math.h>

#include<conio.h>

void main()

if (sqrt(p)==(int)sqrt(p))

cout<<'nnr cerut '<<a<<' ';

getch();

58.   Sa se afiseze numerele din intervalul [a,b] care au proprietatea ca si inversele lor sunt tot din intervalul [a,b].

#include<iostream.h>

#include<conio.h>

void main()

if (inv>=a && inv<=b) cout<<x<<' ';

}

getch();

59.   Sa se elimine din numar cifra din mijloc, daca are numar impar de cifre sau cele doua cifre din mijloc daca are numar par de cifre.

#inclde<iostream.h>

#include<math.h>

#include<conio.h>

void main()

if (k%2==1) //daca are nr impar de cifre

else

cout<<'numarul final este:'<<n;

getch();

60.   Sa se afiseze cifrele unui numar natural cu cu numar impar de cifre (cel mult 9) sub forma unui triunghi.

Ex. pentru n=2345678 se va afisa

5

456

34567

2345678

#include <iostream.h>

#include <conio.h>

#include <math.h>

void main()

while (a);

if(k%2&&k>1)

cout<<n<<endl;

}

else cout<<n<<' eronat';

getch();

Numar prim

61.   Sa se verifice daca un numar este prim.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main(void)

62.   Se citeste un numar natural n. Sa se afiseze mesaj daca este prim sau sa se descompuna in factori primi in caz contrar.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

if (p!=0) cout<<f<<'^'<<p<<'*';

f++;

}

cout<<'b ';

}

getch();

63.   Sa se afiseze numerele prime mai mici decat n (citit de la tastatura).

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

getch();

64.   Sa se afiseze primele n numere prime (n citit de la tastatura).

Ex pt n=5 va afisa: 2 3 5 7 11

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

x++; //cresc x sa caut mai departe numere prime

getch();

65.   Sa se afiseze primele perechi de numere gemene (numere prime si diferenta intre ele este 2) mai mici ca n.

Ex: primele 5 perechi

3 5

5 7

11 13

17 19

29 31

#include<iostream.h>

#include<conio.h>

#include<math.h>

int j,i,k,prim1,prim2,n;

void main()

getch();

66.   Sa se afiseze toate numerele prime de 3 cifre care au forma abc.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

getch();

67.   Se citeste un numar n si apoi un sir de n numere intregi. Afisati suma pe care o obtineti adunand primii divizori primi ai lui n.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

}

}

cout<<'nsuma primilor divizori:'<<s;

getch();

68.   Sa se afiseze numerele prime de patru cifre care au proprietatea ca si inversul lor este un numar prim.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

prim=1;

for(i=2; i<=sqrt(inv)&&prim;i++)

if(inv%i==0) prim=0;

if(prim==1)

}

getch();

}

Divizibilitate

69.   Determinati toate numerele de patru cifre care au proprietatea ca sunt divizibile cu 15 si suma primelor doua cifre este egala cu 12. Cate astfel de numere exista?

#include<iostream>

using namespace std;

int main()

cout<<'sunt '<<k<<' astfel de numeren';

system('pause');

70.   Sa se descompuna in factori primi un numar natural n, strict mai mare decat 1.

#include <iostream.h>

#include <conio.h>

void main()

while(n<2);

cout<<'descompunerea numarului: '<<n<<'=';

i=2;

do

if (k>0)

cout<<i<<'^'<<k<<'*';

i++;

}while (n!=1);

cout<<'b ';

getch();

71.   Sa se afiseze cel mai mic numar natural din intervalul [a,b] care are numarul maxim de divizori proprii.

#include<iostream.h>

#include<conio.h>

void main()

}

cout<<'valoarea minima cu nr maxim de divizori este:'<<val;

getch();

72.   Sa se determine toate tripletele de numere care indeplinesc conditia x2+y2+z2=n

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

if (gasit==0) cout<<' nu exista';

getch();

73.   Se citesc numere pana la intalnirea unui numar negativ. Afisati ultimul numar care are cei mai putini divizori primi.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main() //val=valoarea care are nr max de divizori

}

if (min>=k)

cout<<'x='; cin>>x;

}

cout<<'nr minim de divizori '<<min<<' pentru valoarea '<<val;

getch();

74.   Se citeste un numar natural n. Sa se afiseze toti divizorii sai (proprii si improprii).

Obs. Divizorii proprii ai unui numar sunt toti divizorii sai diferiti de 1 si el insusi.

#include<iostream.h>

#include<conio.h>

void main()

getch();

75.   Se citeste un numar natural n. Sa se verifice daca este un numar perfect, adica daca este egal cu suma divizorilor sai, diferiti de el.

Ex. 6=1+2+3 este perfect

#include<iostream.h>

#include<conio.h>

void main()

i++;

}

if (S==n) cout<<'b este numar perfect';

else cout<<n<<' nu este numar perfect';

getch();

76.   Se citesc doua numere naturale. Aflati daca sunt prietene sau nu. Doua numere sunt prietene daca au suma divizorilor egala.

Ex. 17 si 10 sunt prietene

#include<iostream.h>

#include<conio.h>

void main()

77.   Se citesc doua numere naturale care reprezinta capetele unui interval. Se cere sa se afiseze perechile de numere prietene din acel interval.

#include<iostream.h>

#include<conio.h>

void main()

getch();

78.   Se citeste un numar natural diferit de zero. Se poate descompune in suma de doua patrate, diferite de zero? Daca da sa se afiseze o solutie, daca nu un mesaj.

Ex: 13=32+22

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

else j++;

i++;

}

if(contor==0) cout<<n<<' nu se poate scrie ca suma de doua patrate nenule!';

getch();

79.   Se citeste un numar natural n diferit de zero. Sa se scrie toate tripletele de numere (a, b, c) pitagoreice (a2+b2=c2) mai mici decat n, nenule.

#include<iostream.h>

#include<conio.h>

void main()

if(!contor)

cout<<n<<' nu avem nici o solutie';

getch();

80.   Se citesc n numere naturale (n 3). Sa se afiseze numerele pentru care media aritmetica a cate trei numere citite consecutiv este divizibila cu k (strict pozitiv) sau un mesaj daca nu exista nici un triplet.

Ex. n=10, k=7 si numerele 4 12 16 14 7 0 9 40 34 5

=> (12, 16, 14)

(14, 7, 0)

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

while (n<3);

do while (!k);

k*=3; //divizibil 3k

cout<<'a= '; cin>>a;

cout<<'b= '; cin>>b;

for(i=3;i<=n;i++)

a=b; b=c;

}

if(!contor)

cout<<n<<' nu exista solutie';

getch();

81.   Se citeste un numar prim p si apoi n numere naturale. Se cere sa se gaseasca k maxim astfel incat pk divide produsul celor n numere naturale, fara a efectua produsul celor n numere naturale.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main(void)

while(n<=0);

prim=1;

if (n<2) prim=0;

for(i=2;i<=sqrt(n) && prim;i++)

if (n%i==0) prim=0;

if(prim==0)

cout<<n<<' nu este prim';

else

}

cout<<'k='<<k;

getch();

82.   Se citesc n numere naturale. Aflati cate zerouri are produsul celor n numere fara a calcula efectiv produsul.

Ex. pt n=5 numere si numerele 12 30 45 25 8 va avea 4 zerouri la sfarsit

#include<iostream.h>



#include<conio.h>

void main()

while (x%5==0)

}

if (k2<k5) cout<<'nr de zerouri '<<k2;

else cout<<'nr de zerouri '<<k5;

getch();

Cel mai mare divizor comun

83.   Se citesc douǎ numere naturale a si b. Sa se calculeze cel mai mare divizor comun si cel mai mic multiplu comun.

a

b

ce se afisaza

0

0

(a,b)-nu exista, [a,b]=0

0

0

(a,b)=a [a,b]=0

0

0

(a,b)=b [a,b]=0

0

0

[a,b]=a b/(a,b)

prin scadere:

a daca a=b

(a,b)= (a-b,b) daca a>b

(a,b-a) daca a<b

prin impartire:

r=restul impartirii lui a la b(r=a%b)

(a,b)=bdaca r=0

(b,r) in rest

Varianta cu Algoritmul lui Euclid

#include<iostream.h>

#include<conio.h>

void main()

dc=b;

}

mc=p/dc;

cout<<"cmmdc="<<dc<<endl;

cout<<"cmmmc="<<mc;

getch();

Varianta cu Algoritmul cu scaderi

#include<iostream.h>

#include<conio.h>

void main()

84.   Sa se determine cmmdc al mai multor numere naturale citite de la tastatura, pana la citirea numarului 0.

Ex. pentru 18 15 6 => cmmdc:3

#include<iostream.h>

#include<conio.h>

void main()

cout<<'a=';cin>>a;

}

cout<<'cmmdc:'<<d;

}

getch();

85.   Se citesc n numere naturale nenule. Se cere sa se calculeze cmmdc si cmmmc din ele.

#include<iostream>

using namespace std;

int main()

dc=b; //retin noul divizor comun

mc=p/dc;

cout<<'cmmdc='<<dc<<endl;

cout<<'cmmmc='<<mc<<endl;

system('pause');

86.   Sa se afiseze toate perechile de numere prime intre ele din intervalul [m,n].

#include<iostream>

using namespace std;

int main()

if (b==1) //cmmdc=1

cout<<'('<<x<<','<<y<<') ';

system('pause');

Transformari intre baze

87.   Sa se numere cate valori de 1 exista in reprezentarea in baza b a numarului n (2≤b≤9).

#include<iostream>

using namespace std;

int main()

cout<<'numarul de valori egale cu 1 este:'<<k<<endl;

system('pause');

88.   Se citeste un numar natural diferit de 0. Sa se afiseze numarul cu cifre romane.

#include <iostream.h>

#include <conio.h>

void scrie(long &n,char cs,char cu,int v,int scad);

void main()

while(n<=0);

cout<<'nnumarul '<<n<<' cu cifre romane:';

scrie(n,'M','C',1000,100); // M=1000

scrie(n,'D','C',500,100);// D=500

scrie(n,'C','X',100,10); // C=100

scrie(n,'L','X',50,10); // L=50

scrie(n,'X','I',10,1);// X=10

scrie(n,'V','I',5,1); // V=5

scrie(n,'I',' ',1,0); // I=1

getch();

void scrie(long &n,char cs,char cu,int v,int scad)

89.   Se citeste un numar natural in baza 10, strict mai mic decat 1024. Sa se afiseze acest numar in baza 2.

#include <iostream.h>

#include <conio.h>

void main()

while (n>1023);

cout<<'numarul '<<n<<' in baza 2: ';

nr=0;

p=1;

do while (n);

cout<<nr<<endl;

getch();

90.   Se citeste un numar in baza 2 (cu cel mult 10 cifre). Sa se afiseze acest numar in baza 10.

#include <iostream.h>

#include <conio.h>

void main()

while (n);

cout<<'numarul in baza 10: '<<nr;

getch();

91.   Sa se afiseze tablele adunarii si inmultirii in baza b, 2 b 9.

#include<conio.h>

#include<iostream.h>

void main()

while (b<2||b>9);

clrscr();

cout<<'Tabla adunarii in baza '<<b<<':n';

cout<<' + |'; for(i=0;i<b;i++) cout<<' '<<i<<' '; cout<<'n';

cout<<'----|'; for(i=0;i<4*b;i++) cout<<'-'; cout<<'n';

for(i=0;i<b;i++)

else cout<<' ';

cout<<s<<' ';

}

cout<<'n';

}

cout<<'nTabla inmultirii in baza '<<b<<':n';

cout<<' * |'; for(i=0;i<b;i++) cout<<' '<<i<<' '; cout<<'n';

cout<<'----|'; for(i=0;i<4*b;i++) cout<<'-';

for(i=0;i<b;i++)

else cout<<' ';

cout<<s<<' ';

}

//cout<<'n';

getch();

92.   Sa se numere cate cifre de 1 are numarul n transformat din baza 10 in baza q.

#include<iostream.h>

#include<conio.h>

unsigned int n,q,k,r;

void main()

cout<<'nnumarul de cifre de 1:'<<k;

getch();

Sirul lui Fibonacci

93.  
Termenul al n-lea din sirul lui Fibonacci

Sa se afiseze primii n termeni ai sirului lui Fibonacci:

Ex. pentru n=11 T 0 1 1 2 3 5 8 13 21 34 55

#include <iostream.h>

#include <conio.h>

void main()

}

else cout<<'s-a citit n=0, eronat !';

getch();

94.   Sa se scrie un numar natural n ca suma de numere din sirul lui Fibonacci cu numar minim de termeni.

Ex. pentru n=100 T 89+8+3

#include<conio.h>

#include<iostream.h>

void main()

if (c==n)

else

else cout<<n;

getch();

95.   Se citeste un numar natural x. Se cere sa se verifice daca este un termen din sirul lui Fibonacci. Termenii din sirul lui Fibonacci se determina fiecare ca fiind suma celor doi termeni anteriori. Primii 2 termeni 1 si 1 se dau.

Ex daca citesc numarul x=23 => nu este

daca citesc numarul x=34 => este din sirul lui Fibonacci

#include<iostream.h>

#include<conio.h>

void main()

while (x<=0);

gasit=0;

a=1; b=1;

if (x==1) gasit=1;

do while(c<=x);

if (gasit==1) cout<<x<<' apartine sirului';

else cout<<x<<' nu apartine sirului';

getch();

96.   Sa se afiseze toate numerele din sirul lui Fibonacci mai mici decat o valoare data care sunt impare si prime.

#include<iostream.h>

#include<conio.h>

void main()

while (n<=0);

cout<<'numerele prime si Fibonacci mai mici decat n:';

a=1; b=1;

dowhile (c<=n);

getch();

97.   Sa se afiseze factorialul primelor 11 numere naturale.


#include <iostream.h>

#include <conio.h>

void main()

getch();

Meniuri

98.   Dandu-se laturile unui triunghi, sa se calculeze, pe baza unui meniu:

- pentru i=1 aria triunghiului;

- pentru i=2 inaltimile triunghiului;

- pentru i=3 medianele triunghiului.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

getch();

}while (i!=4);

getch();

99.   Se dau trei puncte prin coordonatele lor. Sa se calculeze (daca se poate) pentru triunghiul format, pe baza unui meniu:

- pentru i=1 perimetrul triunghiului;

- pentru i=2 aria triunghiului;

- pentru i=3 raza cercului inscris;

- pentru i=4 raza cercului circumscris.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

getch();

}while (i!=5);

getch();

100.            Se citeste o litera si pe rand n numere. Sa se afiseze, pe baza unui meniu

- pentru litera 'a' suma numerelor;

- pentru litera 'b' produsul numerelor diferite de 0;

- pentru litera 'c' media lor aritmetica;

- pentru litera 'd' cate dintre ele se divid cu 10;

- pentru litera 'e' cate dintre ele sunt pare.

#include<iostream.h>

#include<conio.h>

#include<math.h>

void main()

do

getch();

}while (i!='f');

getch();

biologie

botanica






Upload!

Trimite cercetarea ta!
Trimite si tu un document!
NU trimiteti referate, proiecte sau alte forme de lucrari stiintifice, lucrari pentru examenele de evaluare pe parcursul anilor de studiu, precum si lucrari de finalizare a studiilor universitare de licenta, masterat si/sau de doctorat. Aceste documente nu vor fi publicate.