#17
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.
| Problema | Suma divizorilor 2 | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64946787 | Utilizator | |
| Fișier | suma_divizorilor_2.cpp | Dimensiune | 268 B |
| Data încărcării | 20 Iunie 2026, 15:06 | Scor/rezultat | Eroare de compilare |
suma_divizorilor_2.cpp: In function ‘void sum_div(int, long long int&)’: suma_divizorilor_2.cpp:11:13: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] 11 | if (n%d==0) | ^~ suma_divizorilor_2.cpp:13:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ 13 | if(d*d!=n) | ^~ suma_divizorilor_2.cpp:15:12: error: return-statement with a value, in function returning ‘void’ [-fpermissive] 15 | return s; | ^ suma_divizorilor_2.cpp:9:12: warning: unused variable ‘i’ [-Wunused-variable] 9 | int d, i; | ^ suma_divizorilor_2.cpp: In function ‘int main()’: suma_divizorilor_2.cpp:23:23: error: cannot bind non-const lvalue reference of type ‘long long int&’ to a value of type ‘int’ 23 | sum_div(x,y); | ^ suma_divizorilor_2.cpp:6:32: note: initializing argument 2 of ‘void sum_div(int, long long int&)’ 6 | void sum_div(int n, long long &s) | ~~~~~~~~~~~^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Suma divizorilor 2 face parte din a doua categorie. Pentru aceste probleme se folosește un program suport, furnizat de propunătorul problemei. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.