#410
Se citește un număr natural n. Acest număr se “împarte” în alte două numere a și b, astfel: a este format din cifrele din prima jumătate a lui n, b este format din cifrele din a doua jumătate a lui n. Dacă n are număr impar de cifre, cifra din mijloc se ignoră. De exemplu, dacă n=9183792, atunci a=918, iar b=792. Să se determine cel mai mare divizor comun al lui a și b.
| Problema | Cmmdc2 | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64876641 | Utilizator | |
| Fișier | cmmdc2.cpp | Dimensiune | 553 B |
| Data încărcării | 09 Iunie 2026, 08:29 | Scor/rezultat | Eroare de compilare |
cmmdc2.cpp: In function ‘int main()’: cmmdc2.cpp:11:5: warning: this ‘while’ clause does not guard... [-Wmisleading-indentation] 11 | while (copie > 0) | ^~~~~ cmmdc2.cpp:13:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘while’ 13 | copie /= 10; | ^~~~~ cmmdc2.cpp:5:18: warning: unused variable ‘p’ [-Wunused-variable] 5 | long long n, p = 1; | ^ cmmdc2.cpp: At global scope: cmmdc2.cpp:16:13: error: ‘cifre’ was not declared in this scope 16 | int k = cifre / 2; | ^~~~~ cmmdc2.cpp:18:5: error: expected unqualified-id before ‘for’ 18 | for (int i = 1; i < k; i++) | ^~~ cmmdc2.cpp:18:21: error: ‘i’ does not name a type 18 | for (int i = 1; i < k; i++) | ^ cmmdc2.cpp:18:28: error: ‘i’ does not name a type 18 | for (int i = 1; i < k; i++) | ^ cmmdc2.cpp:23:5: error: expected unqualified-id before ‘if’ 23 | if (cifre % 2 == 0) { | ^~ cmmdc2.cpp:26:7: error: expected unqualified-id before ‘else’ 26 | } else { | ^~~~ cmmdc2.cpp:30:5: error: expected unqualified-id before ‘while’ 30 | while (b != 0) { | ^~~~~ cmmdc2.cpp:36:5: error: ‘cout’ does not name a type 36 | cout << a; | ^~~~ cmmdc2.cpp:38:1: error: expected declaration before ‘}’ token 38 | } | ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Cmmdc2 face parte din prima categorie. 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ă.