Algoritmul pentru determinarea numarului de cifre se bazeaza pe existenta in limbajul C a unei
instructiuni care ajuta la eliminarea ultimei cifre din numar. Programul se bazeaza pe urmatorul principiu: contorul c numara cifra unitatilor, apoi cifra zecilor, a sutelor si asa mai departe. Dupa fiecare cifra, contorul se mareste cu o unitate, iar apoi se elimina ultima cifra a numarului citit n #include<iostream> using namespace std; int main() { int n, c=0; cout<<"Care este numarul? "; cin>>n; while (n!=0) { c++; n=n/10; } cout<<"Numarul ales are "<<c<<" cifre."; return 0; } 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; cout<<"introduceti numarul "; cin>>n; while(n!=0) { c=n%10; s=s+c; n=n/10; } cout<<"suma cifrelor este "<<s; } 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. Realizati un program care extrage si afiseaza cifrele unui numar citit de la tastatura. #include<iostream.h> void main() { int c, n; cout<<"introduceti numarul "; cin>>n; while(n!=0) { c=n%10; cout<<c<<endl; n=n/10; } }
Algoritmul pentru compunerea unui numar din cifrele sale.
Formula folosita la construirea unui numar din cifrele sale este: nr=nr*10+c; unde nr este numarul care se construieste iar c este cifra care se adauga la unitati. 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; } cout<<"nr. este "<<nr; } 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. Pasii algoritmului sunt: a. se citeste numarul n b. se initializeaza numarul invers cu valoarea 0 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; d. se elimina din numarul n cifra extrasa, cu operatia n=n/10 e. daca n este diferit de 0 se revine la pasul 3. #include<iostream.h> void main() {int n,inv; cout<<"introduceti numarul "; cin>>n; inv=0; while(n!=0) { inv=inv*10+n%10; n=n/10; } cout<<"inversul numarului este "<<inv; } Realizati un program care sa citeasca un numar de la tastatura si sa verifice daca este palindrom. #include<iostream.h> void main() { int n, nr, inv; cout<<"introduceti numarul "; cin>>n; nr=n; inv=0; while (n!=0) { inv=inv*10+n%10; n=n/10; } if(nr=inv) cout<<"Numarul este palindrom"; else