#16
Să se scrie o funcție C++ care să determine suma divizorilor unui număr natural transmis ca parametru. Funcția va returna rezultatul.
| Problema | Suma divizorilor | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64455285 | Utilizator | |
| Fișier | suma_divizorilor.cpp | Dimensiune | 189 B |
| Data încărcării | 07 Mai 2026, 19:32 | Scor/rezultat | Eroare de compilare |
suma_divizorilor.cpp: In function ‘int sum_div(int)’: suma_divizorilor.cpp:7:18: warning: range-based ‘for’ loops with initializer only available with ‘-std=c++20’ or ‘-std=gnu++20’ [-Wc++20-extensions] 7 | for(int d=1; d*d<=n: d++) | ^ suma_divizorilor.cpp:7:24: error: found ‘:’ in nested-name-specifier, expected ‘::’ 7 | for(int d=1; d*d<=n: d++) | ^ | :: suma_divizorilor.cpp:7:23: error: ‘n’ is not a class, namespace, or enumeration 7 | for(int d=1; d*d<=n: d++) | ^ suma_divizorilor.cpp:14:5: error: expected primary-expression before ‘return’ 14 | return s; | ^~~~~~ suma_divizorilor.cpp:13:6: error: expected ‘;’ before ‘return’ 13 | } | ^ | ; 14 | return s; | ~~~~~~ suma_divizorilor.cpp:14:5: error: expected primary-expression before ‘return’ 14 | return s; | ^~~~~~ suma_divizorilor.cpp:13:6: error: expected ‘)’ before ‘return’ 13 | } | ^ | ) 14 | return s; | ~~~~~~ suma_divizorilor.cpp:7:8: note: to match this ‘(’ 7 | for(int d=1; d*d<=n: d++) | ^ suma_divizorilor.cpp:7:13: warning: control reaches end of non-void function [-Wreturn-type] 7 | for(int d=1; d*d<=n: d++) | ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Suma divizorilor 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ă.