Documente Academic
Documente Profesional
Documente Cultură
Algoritmi_pentru_prelucrarea_cifrelor_unui_numar
Contributed by Administrator
Thursday, 04 December 2008
Last Updated Wednesday, 17 December 2008
Pentru prelucrarea cifrelor unui numar se poate folosi unul din urmatorii algoritimi:
1. Algoritmul pentru extragerea cifrelor unui numar: sunt extrase pe rind cifrele c ale numarului incepind cu cifra unitatilor
cu operatia n%10 si eliminarea din numar a cifrei extrase, cu operatia n/10. Aceste operatii se executa atita timp cit mai
exista cifre de extras din numar adica n diferit de 0.
Exemplu:
Realizati un program care extrage si afiseaza cifrele unui numar citit de la tastatura.
#include<iostream.h>
void main()
int c, n;
while(n!=0)
{ c=n%10;
cout<<c<<endl;
n=n/10; }
Exercitiu:
Realizati un program care sa citeasca un numar de la tastatura si sa afiseze suma cifrelor sale.
#include<iostream.h>
void main()
int c, n, s;
s=0;
while(n!=0)
{ c=n%10;
s=s+c;
n=n/10; }
Exercitiu:
Se introduc de la tastatura un sir de numere reale, pina la citirea valorii 0. Sa se afiseze toate perechile de numere
introduse consecutiv care au proprietatea ca al doilea numar este egal cu suma cifrelor primului.
#include<iostream.h>
void main()
{ int a, b, s, x;
cin>>a; cin>>b;
while(b>0)
{ s=0; x=a;
while(x!=0)
{ s=s+x%10;
x=x/10; }
a=b;
cin>>b;
nr=nr*10+c;
unde nr este numarul care se construieste iar c este cifra care se adauga la unitati.
Exemplu:
Realizati un program care citeste cifrele unui numar de la tastatura si apoi afiseaza numarul.
#include<iostream.h>
void main()
{ int c, nr;
nr=0;
cin>>c;
while((c>=0)&&(c<=9))
{ nr=nr*10+c;
cin>>c; }
3. Algoritmul pentru determinarea inversului unui numar. Algoritmul determina inversul unui numar n prin extragerea pe
rind a fiecarei cifre (incepind cu cifra unitatilor) din numarul n si compunerea unui nou numar cu aceste cifre.
a. se citeste numarul n
c. se extrage cifra cea mai semnificativa din numarul n si se aduna cifra la numarul inv*10, prin operatia
inv=inv*10+n%10;
Exemplu:
#include<iostream.h>
void main()
{int n,inv;
inv=0;
while(n!=0)
{ inv=inv*10+n%10;
n=n/10; }
Exercitiu:
Realizati un program care sa citeasca un numar de la tastatura si sa verifice daca este palindrom.
#include<iostream.h>
void main()
nr=n; inv=0;
while (n!=0)
{ inv=inv*10+n%10;
n=n/10; }
if(nr=inv)
else