#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 | #64683434 | Utilizator | |
| Fișier | suma_divizorilor_2.cpp | Dimensiune | 218 B |
| Data încărcării | 22 Mai 2026, 15:42 | Scor/rezultat | Eroare de compilare |
suma_divizorilor_2.cpp: In function ‘void sum_div(int, long long int&)’: suma_divizorilor_2.cpp:5:9: error: declaration of ‘int div’ shadows a parameter 5 | int div=0; | ^~~ suma_divizorilor_2.cpp:4:32: note: ‘long long int& div’ previously declared here 4 | void sum_div(int n, long long &div){ | ~~~~~~~~~~~^~~ suma_divizorilor_2.cpp:9:17: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 9 | if(n=!i*i) | ~^~~~~ suma_divizorilor_2.cpp:13:5: warning: statement has no effect [-Wunused-value] 13 | div; | ^~~ suma_divizorilor_2.cpp: In function ‘int main()’: suma_divizorilor_2.cpp:20:23: error: cannot bind non-const lvalue reference of type ‘long long int&’ to a value of type ‘int’ 20 | sum_div(x,y); | ^ suma_divizorilor_2.cpp:4:32: note: initializing argument 2 of ‘void sum_div(int, long long int&)’ 4 | void sum_div(int n, long long &div){ | ~~~~~~~~~~~^~~
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ă.