#800
Un număr natural nenul se numește perfect dacă este egal cu suma divizorilor săi naturali strict mai mici decât el.
Să se scrie o funcție C++ care, pentru doi parametri, a
și b
, afișează pe ecran, separate prin câte un spațiu, în ordine descrescătoare, toate numerele perfecte din intervalul [a,b]
. Dacă în interval nu există astfel de numere, subprogramul afișează pe ecran mesajul nu exista
.
Variante Bacalaureat 2014
Problema | Perfect | Operații I/O |
![]() |
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #25066336 | Utilizator | |
Fișier | perfect.cpp | Dimensiune | 390 B |
Data încărcării | 27 Octombrie 2020, 10:57 | Scor / rezultat | Eroare de compilare |
perfect.cpp: In function 'void perfect(int, int)': perfect.cpp:7:32: error: 'n' was not declared in this scope for(int i = 1; i * i < n; i++) { ^ perfect.cpp:8:28: error: 'S' was not declared in this scope if(n % i == 0) S += i; ^ perfect.cpp:9:34: error: 'S' was not declared in this scope if(n % (n / i) == 0) S += n / i; ^ perfect.cpp:11:21: error: 'n' was not declared in this scope if(i * i == n) S += i; ^ perfect.cpp:11:24: error: 'S' was not declared in this scope if(i * i == n) S += i; ^ perfect.cpp:12:12: error: 'S' was not declared in this scope if(S == n + i) { ^ perfect.cpp:12:17: error: 'n' was not declared in this scope if(S == n + i) { ^ perfect.cpp:13:21: error: 'j' was not declared in this scope cout << j << " " ; ^ perfect.cpp:14:13: error: 'ok' was not declared in this scope ok = 1; ^ perfect.cpp:6:13: warning: unused variable 'aux' [-Wunused-variable] int aux = i; ^ perfect.cpp:17:8: error: 'ok' was not declared in this scope if(ok == 0) cout << "nu exista"; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Perfect 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ă.