Se citesc succesiv numere naturale, până la apariţia valorii 0. Să se afişeze dintre
numerele citite, pe acelea care au cel mai mare numar de divizori proprii.
Răspunsuri la întrebare
Răspuns de
0
Rezolvare C++:
# include<iostream>
using namespace std;
unsigned divizorip(unsigned x)
{
unsigned d=0;
for(int i=2;i<=x/2;i++)
if(x%i==0) d++;
return d;
}
int main()
{
unsigned x,max,v[100],i=2,n;
cin>>max; v[1]=max;
while(cin>>x && x!=0)
{
v[i]=x;
if(divizorip(max)<divizorip(x)) max=x;
i++;
}
n=i-1;
for(i=1;i<=n;i++)
if(divizorip(v[i])==divizorip(max))
cout<<v[i]<<" ";
return 0;
}
# include<iostream>
using namespace std;
unsigned divizorip(unsigned x)
{
unsigned d=0;
for(int i=2;i<=x/2;i++)
if(x%i==0) d++;
return d;
}
int main()
{
unsigned x,max,v[100],i=2,n;
cin>>max; v[1]=max;
while(cin>>x && x!=0)
{
v[i]=x;
if(divizorip(max)<divizorip(x)) max=x;
i++;
}
n=i-1;
for(i=1;i<=n;i++)
if(divizorip(v[i])==divizorip(max))
cout<<v[i]<<" ";
return 0;
}
Alte întrebări interesante
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Informatică,
10 ani în urmă
Informatică,
10 ani în urmă
Matematică,
10 ani în urmă
Matematică,
10 ani în urmă