P. 1
Probleme Rezolvate Structuri Repetitive

Probleme Rezolvate Structuri Repetitive

|Views: 1,113|Likes:
informatica
informatica

More info:

Published by: Cotovici Catana Alina on Apr 06, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

01/21/2015

pdf

text

original

Scrieţi un program C/C++ care citeşte din fişierul text BAC.

TXT , cel mult 100 de numere naturale aflate pe o singura linie, formate din cel mult 9 cifre fiecare, separate prin spatii si dintre acestea le afişează pe ecran doar pe acelea care au proprietatea de a fi palindrom. Daca nu se găsesc numere palindrom, se va afişa pe ecran valoarea–1. Un număr are proprietatea de a fi palindrom daca citit de la dreapta la stânga sau de la stânga la dreapta are aceeaşi valoare. De exemplu 1221 este palindrom, in timp ce 1210 nu este palindrom. Exemplu : daca din fişierul BAC.TXT se citesc numerele : 7341 , 8228 , 660 , 2 , 80 , 131 , atunci pe ecran se vor afişa : 828 , 2 , 131. #include<iostream.h> int palindrom(int n) {int copie=n,oglindit,c; oglindit=0; {while(n!=0) c=n%10; oglindit=oglindit*10+c; n=n/10;} return (copie==oglindit);} void main() {int v[100],n,i,p; p=0; cout<<"n=";cin>>n; for(i=1;i<=n;i++) {cout<<"v["<<i<<"]=";cin>>v[i];} for(i=1;i<=n;i++) if(palindrom(v[i])) {cout<<v[i]; p=1;} if(p==0) cout<<"-1";} .Scrieţi un program C/C++ care citeşte de pe prima linie a fişierului text BAC.TXT trei numere naturalea, b, cformate din cel mult patru cifre fiecare, separate prin cate un spaţiu si afişează pe ecran cel mai mare divizor comun al acestora. De exemplu, daca din fişier se citesc numerele : 9 27 15, atunci se afişează 3. #include<iostream.h> int cmmdc (int x,int y) {while (x!=y) if(x>y) else y=y-x; return x;} void main() {int a,b,c,d; fstream("bac.txt";ios::in); f>>a>>b>>c; f.close; d=cmmdc(a,b); cout<<cmmdc(c,d);}

if(prim(n)) cout<<"da". else cout<<"nu".h> int prim(int n) {int prim=1. c. p=1. cout<<"n=".Scrieţi un program care verifica daca un număr natural k(1<k<100000) citit de la tastatura este prim.} void main() {int n. s. Limbajul C/C++ #include<iostream.} Să se scrie un program care să calculeze şi să afişeze pe ecran produsul cifrelor pare şi suma cifrelor impare a unui număr natural n citit de la tastatură. for(int d=2.cin>>n. Numărul n se citeşte de la tastatura.n. #include<iostream.n. #include<iostream. iar pe următoarea linie. else s=s+c.h> unsigned int n. void main() { cin>>n. while(n) { c=n%10. in ordine descrescătoare.d<=n/2. . cout<< .cinn=>. in ordine crescătoare. } Se afişează pe ecran primele n numere naturale astfel: pe prima linie. n=n/10.d++) if(n%d==0) prim=0.h> void main() { int i. } cout<< p <<" "<< s. if(prim) return 1. Programul va afişa pe ecran mesajul DA sau mesajul NU. if(c%2==0) p=p*c. else return 0.

cout<<(p*10+u)*2.u. cout<< .p.i++) cout<<i<<. Numărul a se citeşte de la tastatură.c. Numărul a se citeşte de la tastatură. a=a/10. a=a/10. for(i=n.h> void main() {unsigned int a.c. do {c=a%10. cout<< . if(c<min) min=c. cifra minimă a unui număr natural nenul a.i>=1. if(c<min) min=c. p=n. cout<< Cifra minima= <<min<<endl.h> void main() {unsigned int a. while(n>9) n=n/10.h> int main() { int n.min=9. #include<iostream. pe ecran. .cin a= >>a. Sa se calculeze cel mai mic multiplu par al numarului obtinut din prima si ultima cifra a numarului citit.i--) cout<<i<< . return 0.min=9. cout<<endl. Se citeste un numar natural cu cel mult 4 cifre. cin>>n.for(I=1. }while(a!=0). }while(a!=0). do {c=a%10. . pentru 1265 se obtine 30 (2*15) #include<iostream. pe ecran. cout<< Cifra minima=<<min<<endl.i<=n. } Se afişează. cifra minimă a unui număr natural nenul a. Limbajul C/C++ #include<iostream. } Se afişează. u=n%10. Ex.cin a= >>a.

c=n%10. Sa se calculeze si sa se afiseze rasturnatul (oglinditul) lui n #include<iostream> using namespace std. c=0. return 0. } cout<<k. cin>>n. n1=n. n=n1/(p*10)*p+n1%p. while(n>0) { c++. n=n/10. Sa se elimine din numarul n cifra din mijloc si sa se afiseze numarul rezultat. for(i=1. return 0. n=n/10. #include<iostream. #include<iostream> using namespace std.p. while(n) { if(n%10==c) k++.i++) p=p*10. cout<<"n=". cout<<n. int main() { int n. cin>>n. while(n>0) { r=r*10+n%10. } cout<<"rasturnatul este "<<r.r. } .i.} Se citeste un numar natural cu cel mult 9 cifre.n1. } Se citeste un numar natural n. Sa se determine de cate ori apare ultima cifra in numarul citit.k=0.i<=c/2. n=n/10. cin>>n. return 0. int main() { int n. cout<<"n=". r=0.h> int main() { long n. } p=1. } Se citeste un numar natural n avand numar impar de cifre.c.c.

int main() { int n. y=y/10.x<=n. while(y>0) { r=r*10+y%10. #include<iostream> using namespace std. if(p==1) cout<<x<<" ".p. x. cin>>n. if(p==1) { r=0. for(x=2. } } return 0. y.d<=x/2.d++) if(x%d==0) p=0.x++) { p=1. y=x.d++) if(r%d==0) p=0.r. } . Exemplu: 13 este prim si la fel 31. } for(d=2.d. for(d=2.d<=r/2.Sa se afiseze numerele mai mici sau egale cu n care au proprietatea sa atat ele cat si rasturnatul lor sunt numere prime. cout<<"n=".

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->