1. Să se numere divizorii unui număr.
int n,i,S_div=0,P_div=1,Nr_div=0;
cout << "n= "; cin >>n;
for (i=1;i<=n;i++)
if (n%i==0)
{
Nr_div=Nr_div+1;
S_div=S_div+i;
P_div=P_div*i;
}
cout << "Nr. divizorilor = " << Nr_div << endl;
cout << "Suma divizorilor = " << S_div <<endl;
cout << "Produsul divizorilor = " << P_div;
2. Descompunerea în factori primi a unui număr.
int fm,d=2,n,aux;
cout << "n= "; cin >> n;
aux=n;
while(aux!=1)
{fm=0;
while(aux%d==0)
{
aux=aux/d;
fm=fm+1;
}
if(fm!=0)
cout<<n<<" se imparte de " << fm << " ori la "<< d<< endl;
d++;
}
3. Se citesc n numere până la 0. Să se calculeze: - Suma numerelor pare, produsul nr. impare și nr. numerelor prime.
int n,i,d=2,s=0,p=1,nr_div=0,nr_prime=0;
cout << "n= "; cin >> n;
while (n!=0)
{if (n%2==0) s=s+n;
else p=p*n;
nr_div=0;
for (i=1;i<=n;i++)
if (n%i==0)
nr_div=nr_div+1;
if (nr_div==2)
nr_prime=nr_prime+1;
cin>>n;
}
cout << "Suma nr. pare = " << s <<endl;
cout << "Produsul nr. impare = " << p <<endl;
cout << "Nr. numerelor prime = " << nr_prime;
4. Se dă un nr. n. Det. : Suma și produsul cifrelor, cifra maximă și minimă și inversul numărului.
int n,uc,s_cifre=0,p_cifre=1,p=10,inv=0,Max=0,Min=0;
cout << "n= "; cin>>n;
uc=n%10; Min=uc; Max=uc;
while (n!=0)
{
uc=n%10;
s_cifre=s_cifre+uc;
p_cifre=p_cifre*uc;
if (uc>Max) Max=uc;
if (uc<Min) Min=uc;
inv=inv*p+uc;
n=n/10;
}
cout << "Suma cifrelor = " << s_cifre << endl;
cout << "Produsul cifrelor = " << p_cifre <<endl;
cout << "Max = " << Max <<endl << "Min = " << Min <<endl;
cout << "Inversul = " << inv;
5. Se citesc n nr. Să se construiască un nr. în baza 10: - cu cifrele în ordinea citirii, - cu cifrele în ordinea inversă citirii.
int c,n=0,inv=0,p=10,p2=1,nr,i;
cout << "Din cate cifre este nr. ?" << endl; cin >> nr;
cout << "Cifrele:"; cin >> c;
for (i=1;i<=nr;i++)
{
n=n*p+c;
inv=c*p2+inv;
p2=p2*10;
cin>>c;
}
cout << "Nr. format in ordinea citirii = " << n <<endl;
cout << "Nr. format in ordinea inversa citirii = " << inv;
6. Se dă un nr. în baza 10. Să se afișeze descompunerea în baza 2.
int c,n,n_2=0,p=10;
cin >> n; c=n%2;
while (n!=0)
{
n_2=n_2*p+c;
n=n/2;
c=n%2;
}
cout << "Nr. in baza 2 = " << n_2;