403
Cerinţa
Să se scrie o funcție C++ care să determine suma divizorilor unui număr natural transmis ca parametru. Funcția întoarce rezultatul prin intermediul unui parametru de ieşire.
Restricţii şi precizări
- numele funcției va fi
sum_div - funcția va avea doi parametri, reprezentând numărul pentru care se calculează suma divizorilor, respectiv valoarea calculată
- valorile celor doi parametri vor fi numere naturale nenule mai mici decât
2000000000
Important
Soluţia propusă va conţine doar definiţia funcţiei cerute. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.
void sum_div(int n, int& sum){
sum = 0;
for(int d = 1; d * d <= n; ++d){
if(n % d == 0)
sum += d + (n / d);
if(d * d == n)
sum -= d;
}
}
Comentarii