Am 3 probleme!
1)Se da n numar natural.
Calculati recursiv produsul cifrelor nenule din n.
Ex: n=2018--> 16
2) Calculati recursiv nr de numere prime <=n.
Ex: n=10-->4
3) Calculati recursiv: 1+2+2^2+...+2^n
Ex: n=3-->15
Răspunsuri la întrebare
Răspuns de
2
#include <iostream>
using namespace std;
int produs(int n){
if(n)
if(n%10!=0) return n%10*produs(n/10);
else return produs(n/10);
else return 1;
}
int prime(int n){
if(n>1){ int prim=1;
for(int i=2;i<=n/2;i++)
if(n%i==0) prim=0;
if(prim) return 1+prime(n-1);
else return prime(n-1);
}
else return 0;
}
int suma(int n){
if(n){ int p=1;
for(int i=1;i<=n;i++)
p=p*2;
return p+suma(n-1);
}
else return 1;
}
int main()
{
int n;
cin>>n;
cout<<"Suma cifrelor nenule:"<<produs(n)<<'\n';
cout<<"Numarul de numere prime:"<<prime(n)<<'\n';
cout<<"Suma:"<<suma(n);
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă