#4858
Subprogramul diviz are un singur parametru, n prin care primește un număr natural (n ∈ [1, 1.000.000.000]). Subprogramul returnează cel mai mare divizor al lui n care este pătrat perfect. Scrieți definiția completă a subprogramului C/C++.
Bac 2025, sesiunea specială
| Problema | diviz | Operații I/O |
diviz.in/diviz.out
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
| Id soluție | #64734348 | Utilizator | |
| Fișier | diviz.cpp | Dimensiune | 294 B |
| Data încărcării | 26 Mai 2026, 18:53 | Scor/rezultat | Eroare de compilare |
diviz.cpp: In function ‘int diviz(int)’: diviz.cpp:10:44: error: expected primary-expression before ‘)’ token 10 | while(d>1){if(n%(d*d)==0)) | ^ diviz.cpp:14:33: error: expected ‘;’ before ‘}’ token 14 | d--} | ^ | ; diviz.cpp:16:9: warning: empty parentheses were disambiguated as a function declaration [-Wvexing-parse] 16 | int main() | ^~ diviz.cpp:16:9: note: remove parentheses to default-initialize a variable 16 | int main() | ^~ | -- diviz.cpp:16:9: note: or replace parentheses with braces to value-initialize a variable diviz.cpp:17:1: error: a function-definition is not allowed here before ‘{’ token 17 | { | ^ diviz.cpp:26:2: error: expected ‘}’ at end of input 26 | } | ^ diviz.cpp:8:18: note: to match this ‘{’ 8 | int diviz(int n) {int d;d=(int) sqrt(n); | ^ diviz.cpp:26:2: warning: no return statement in function returning non-void [-Wreturn-type] 26 | } | ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema diviz 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ă.