Sunteți pe pagina 1din 9

Se citeste un numar natural n cu cel mult 4 cifre.

Sa se afiseze in ordine crescatoare toate numele naturale pare atat timp cat suma lor nu depaseste pe n. Ex: pentru n=15 se afiseaza 2 4 6 #include<iostream.h> int main() { int x,n,s; cin>>n; x=2; s=2; while(s<=n) { cout<<x<<" "; x=x+2; s=s+x; } } Se citeste un numar natural n impar. Sa se afiseze primele n perechi de numere consecutive a caror suma este divizibila cu n. Ex: pentru n=3 se afiseaza perechile 12 45 78 #include<iostream.h> int main() { int n,x=1,k=0; cin>>n; while(k<n) { if((x+x+1)%n==0) { cout<<x<<" "<<x+1<<endl; k++; } x=x+1; } } sau #include<iostream.h> int main() { int n,x,k; cin>>n; x=n/2; for(k=1;k<=n;k++) { cout<<x<<" "<<x+1<<endl; x=x+n; } system("pause");} Se citesc de la tastatura numere naturale (cel putin 3) pana cand antepenultimul + penultimul = ultimul. Sa se afiseze suma numerelor citite. Ex. daca citim 3 5 2 4 6 se va opri citirea dupa citirea nui 6 si se va afisa 20.

#include<iostream> using namespace std; int main()

{int x,y,z,s=0; cin>>x>>y>>z; s=x+y+z; while(x+y!=z) { x=y; y=z; cin>>z; s=s+z; } cout<<s; system("pause"); return 0; } Se citeste un numar natural n. Se afiseze pe ecran un triunghi de forma: * ** *** ..... ***...* (n caractere *) #include<iostream> using namespace std; int main() {int n,i,j; cin>>n; for(i=1;i<=n;i++) { for(j=1;j<=i;j++) cout<<"* "; cout<<endl; } system("pause"); return 0; } Se citesc n numere naturale. Sa se afiseze cel care are suma divizorilor maxima. #include<iostream> using namespace std; int main() {int i, n,x,max=0, mx, s=0,d; cin>>n; for(i=1;i<=n;i++) { cin>>x; s=0; for(d=1;d<=x;d++) if(x%d==0) s++; if(s>max) { max=s; mx=x; } } cout<<mx<<" "<<max; system("pause"); return 0; }

Conversii explicite. Se citeste un caracter a. Sa se afiseze codul sau ASCII. Se citeste un numar natural c din intervalul[32,127]. Sa se afiseze caracterul cu codul ASCII c. #include<iostream> using namespace std; int main() { char a; cout<<"a="; cin>>a; cout<<a<<" are codul ASCII "<<(int)a<<'\n'; int c; cout<<"c="; cin>>c; cout<<"caracterul cu codul ASCII "<<c<<" este "<<(char)c; return 0; } Se citeste un numar intreg a reprezetand un an. Sa se verifice daca a este an bisect. #include<iostream> using namespace std; int main() { int a; cout<<"a="; cin>>a; if(a%4==0 && a%100!=0 || a%400==0) cout<<"da"; else cout<<"nu"; return 0; } Se citesc doua numere intregi a si b. Daca a divide pe b sau b divide pe a atunci sa se afiseze catul impartirii celui mai mare la cel mai mic, iar altfel restul impartirii celui mai mare la cel mai mic. #include<iostream> using namespace std; int main() { int a,b; cout<<"a="; cin>>a; cout<<"b="; cin>>b; if(a%b==0 || b%a==0) if(a>b) cout<<a/b; else cout<<b/a; else if(a>b) cout<<a%b; else cout<<b%a; return 0; } Se citesc 3 numere intregi. Sa se afiseze cel mai mare dintre ele. #include<iostream> using namespace std; int main() {

int a,b,c; cout<<"a="; cin>>a; cout<<"b="; cin>>b; cout<<"c="; cin>>c; if(a>=b && a>=c) cout<<a; else if(b>=a && b>=c) cout<<b; else if(c>=a && c>=b) cout<<c; return 0; } sau #include<iostream> using namespace std; int main() { int a,b,c,max; cout<<"a="; cin>>a; cout<<"b="; cin>>b; cout<<"c="; cin>>c; max=a; if(b>max) max=b; if(c>max) max=c; cout<<max; return 0; } Se citesc 3 numere naturale a, b,c. Sa se afiseze in ordine crescatoare a valorii lor. #include<iostream> using namespace std; int main() { int a,b,c; cout<<"a="; cin>>a; cout<<"b="; cin>>b; cout<<"c="; cin>>c; if(a<=b && b<=c) cout<<a<<" "<<b<<" "<<c; else if(a<=c && c<=b) cout<<a<<" "<<c<<" "<<b; else if(b<=a && a<=c) cout<<b<<" "<<a<<" "<<c; else if(b<=c && c<=a) cout<<b<<" "<<c<<" "<<a; else if(c<=a && a<=b) cout<<c<<" "<<a<<" "<<b; else if(c<=b && b<=a) cout<<c<<" "<<b<<" "<<a; return 0; } sau #include<iostream> using namespace std; int main() { int a,b,c,aux; cout<<"a="; cin>>a; cout<<"b="; cin>>b; cout<<"c="; cin>>c; if(a>b) { aux=a; a=b; b=aux; } if(a>c) { aux=a; a=c; c=aux; }

if(b>c) { aux=b; b=c; c=aux; } cout<<a<<" "<<b<<" "<<c; return 0; } Se citesc 3 numere naturale a, b, c reprezentand laturile unui triunghi. Sa se calculeze aria triunghiului cu laturile a, b, c. (Formula lui Heron) #include<iostream> using namespace std; int main() { int a,b,c; float p,A; cout<<"a="; cin>>a; cout<<"b="; cin>>b; cout<<"c="; cin>>c; p=(float)(a+b+c)/2; A=sqrt(p*(p-a)*(p-b)*(p-c)); cout<<"aria este "<<A; return 0; } Se citesc numere naturale pana cand se introduce numarul 0. Sa se afiseze cel mai mare numar citit. #include<iostream> using namespace std; int main() { int x, max; cout<<"x="; cin>>x; max=x; while(x!=0) { if(x>max) max=x; cout<<"x="; cin>>x; } cout<<max; return 0; } Se citesc numere naturale pana cand se introduce numarul 0. Sa se afiseze media aritmetica a numerelor introduse. #include<iostream> using namespace std; int main() { int x,s,n; float m; s=0; n=0; cout<<"x="; cin>>x; while(x!=0) { s=s+x; n++; cout<<"x="; cin>>x; }

m=(float)s/n; cout<<m; } Se citesc doua numere naturale a si l. a reprezinta un an iar l numarul unei luni din anul a. Afisati cate zile are luna l. Se va tine cont daca anul a este bisect. Exemplu: a=2008 l=2 rezultatul este 29 deoarece luna febrauarie are 29 de zile in anii bisecti. #include<iostream> using namespace std; int main() { int a,l; cout<<"a="; cin>>a; cout<<"l="; cin>>l; if(l==1 || l==3 || l==5 || l==7 || l==8 || l==10 || l==12) cout<<31; else if(l==4 || l==6 || l==9 || l==11) cout<<30; else if(a%4==0 && a%100!=0 || a%400==0) cout<<29; else cout<<28; return 0; } Se citeste un numar natural p reprezentand perimetrul unui triunghi. Afisati toate tripletele de numere naturale care pot fi lungimile laturilor triunghiului de perimetru p. Exemplu: Daca p=10, solutii posibile sunt: 244 334 #include<iostream> using namespace std; int main() { int a,b,c,p; cout<<"p="; cin>>p; for(a=1;a<=p/2;a++) for(b=a;b<=p/2;b++) { c=p-a-b; if(c>=b && a+b>c) cout<<a<<" "<<b<<" "<<c<<endl; } return 0; } Afisati toate numerele naturale de forma abba care sunt divizibile cu un numar natural n citit de la tastatura. #include<iostream> using namespace std; int main() { int n, a, x; cout<<"n="; cin>>n; for(a=10;a<=99;a++) { x=(a*10+a%10)*10+a/10; if(x%n==0) cout<<x<<" ";

} return 0; } Se citeste un numar natural k. Gasiti toate perechile de numere x si y cu proprietatea ca x*x-y*y=k. Exemplu: Pentru k=15 exista 2 perechi (8,7) si (4,1). #include<iostream> using namespace std; int main() { int k,a,b,x,y; cout<<"k="; cin>>k; for(a=1;a<=k;a++) for(b=a+1;b<=k;b++) if(k%a==0 && k%b==0) { x=(a+b)/2; y=(b-a)/2; if(x*x-y*y==k) cout<<x<<" "<<y<<endl; } return 0; } Sa se scrie un program care afiseaza tabla inmultirii de la 1 la 10. #include<iostream> using namespace std; int main() { int i,j; for(i=1;i<=10;i++) { for(j=1;j<=10;j++) cout<<i<<" X "<<j<<" = "<<i*j<<endl; cout<<endl; } return 0; } Se citeste un numar natural n. Sa se determine daca este cub perfect. #include<iostream> using namespace std; int main() { int n,i; cout<<"n="; cin>>n; i=1; while(i*i*i<n) i++; if(n==i*i*i) cout<<"da"; else cout<<"nu"; return 0; }

Pentru un numar natural n citit de la tastatura sa se afiseze n*n numere astfel: 1 2 3 ... n 2 3 4 ... n+1 3 4 5 ... n+2 ...... n n+1 n+2 ... 2n-1 #include<iostream> using namespace std; int main() { int n,i,j; cin>>n; for(i=1;i<=n;i++) { for(j=1;j<=n;j++) cout<<i+j-1<<" "; cout<<endl; } return 0; } Se citeste numarul natural n. Afisati in ordine crescatoare numerele de la 1 la n*n pe n randuri a cate n numere fiecare. Exemplu: pentru n=4 se afiseaza 1234 5678 9 10 11 12 13 14 15 16 #include<iostream> using namespace std; int main() { int n,i; cin>>n; for(i=1;i<=n*n;i++) { cout<<i<<" "; if(i%n==0)cout<<endl; } return 0; } Se citeste un numar natural p. Afisati toate tripletele de numere naturale care pot reprezenta lungimile laturilor unui triunghi isoscel cu perimetrul egal cu p. Exemplu: pt p=12 se obtin tripletele: 444 552 #include<iostream> using namespace std; int main() { int a,c,p; cin>>p;

for(a=1;a<=p/2;a++) for(c=1;c<=p/2;c++) if(a+a+c==p && a+a>c) cout<<a<<" "<<a<<" "<<c<<endl; return 0; } sau #include<iostream> using namespace std; int main() { int p,a,c; cin>>p; for(a=1;a<=p/2;a++) { c=p-2*a; if(c<a+a && c>0) cout<<a<<" "<<a<<" "<<c<<endl; } return 0; } Se citesc 3 numere naturale n, a si b. Afisati primele n puteri ale lui 2 din intervalul [a,b]. Daca nu exista cel putin n puteri ale lui 2 in interval, atunci se vor afisa cele care exista. Exemple: pentru n=2 a=6 b=35 se vor afisa valorile 8 si 16 pentru n=2 a=24 b=55 se va afisa valoarea 32. #include<iostream> using namespace std; int main() { int a,b,n,p,k; cin>>n>>a>>b; k=0; p=1; while(p<=b && k<n) { if(p>=a) { cout<<p<<" "; k++; } p=p*2; } return 0; }

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