Informatică, întrebare adresată de norisor15, 9 ani în urmă

Scrie algoritmul care calculeaza suma divizorilor numarului intreg x dat.

Răspunsuri la întrebare

Răspuns de justGreen
0
#include <iostream>
 using namespace std;
 int main()
{
int numarul, sumaDivizorilor=0;
cout<<"Numarul="; cin>>numarul;
if (numarul>=0)
{
for (int divizor=1; divizor<=numarul; divizor++)
 if (numarul%divizor==0)
    sumaDivizorilor += divizor;
}
else 
{
for (int divizor=-1; divizor>=numarul; divizor--)
 if (numarul%divizor==0)
   sumaDivizori += divizor;
}
cout<<"Suma divizorilor este "<<sumaDivizorilor;
return 0;
}
Răspuns de express
1
Iti ofer un algoritm in C++ mai eficient.Succes!
#include <iostream>
using namespace std;
int n , d;
long long s = 0;
int main()
{
cin >> n;
for(d=1 ; d*d<n ; d++)
if(n % d == 0)
s = s + d + n / d;
if(d * d == n)
s = s + d;
cout << s;
return 0;
}

Alte întrebări interesante