Răspuns :
int sum(int n)
{
int S = 0;
for (int i = 1; i<=n; i++)
{
if (n%i==0){S+=i;}
}
return S;
}
Ca sa afisezi sum(6) scrii in main "cout << sum(6)"
{
int S = 0;
for (int i = 1; i<=n; i++)
{
if (n%i==0){S+=i;}
}
return S;
}
Ca sa afisezi sum(6) scrii in main "cout << sum(6)"
Salut! Am facut o sursa C++, eficienta pentru calcului sumei divizorilor. Numarul are maxim 9 cifre...asa ca trebuie o sursa eficienta.
int sum(int n)
{
int d, s = 0;
for(d = 1; d * d < n; d++)
{
if (n % d == 0) s = s + d + n / d;
}
if (n == d * d) s = s + d;
return s;
}
int sum(int n)
{
int d, s = 0;
for(d = 1; d * d < n; d++)
{
if (n % d == 0) s = s + d + n / d;
}
if (n == d * d) s = s + d;
return s;
}