#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 | #64642270 | Utilizator | |
| Fișier | diviz.cpp | Dimensiune | 347 B |
| Data încărcării | 20 Mai 2026, 08:44 | Scor/rezultat | Eroare de compilare |
diviz.cpp: In function ‘int diviz(int)’: diviz.cpp:11:20: error: lvalue required as left operand of assignment 11 | if(sqrt(d)=(int)sqrt(d)) | ~~~~^~~ diviz.cpp:11:13: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] 11 | if(sqrt(d)=(int)sqrt(d)) | ^~ diviz.cpp:14:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ 14 | if(sqrt(n/d)=(int)sqrt(n/d)) | ^~ diviz.cpp:14:24: error: lvalue required as left operand of assignment 14 | if(sqrt(n/d)=(int)sqrt(n/d)) | ~~~~^~~~~
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ă.