321
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