#1214
Lui Mihai îi place matematica distractivă, sau poate mai mult distracția decât matematica. Pentru a scăpa de teme, el a inventat operația ”smile” notată cu semnul ☺, operație care se aplică numerelor naturale nenule conform exemplelor de mai jos:
6☺4=2109☺2=7118☺5=3137☺6=1136☺6=126☺10=41643☺1500=1457154323☺23=46Profesorul de matematică i-a promis nota 10 pentru invenție, numai dacă știe să determine corect numărul divizorilor pari pentru rezultatul obținut prin operația ”smile”. Astfel, Mihai a primit N perechi de numere (a,b) pentru care trebuie să calculeze a☺b și să determine dacă rezultatul obținut are divizori pari.
Scrieți un program care citește un număr natural N și N perechi de numere naturale (a,b) și afișează:
a) pentru fiecare pereche de numere (a,b), rezultatul a☺b;
b) cel mai mic și cel mai mare rezultat a☺b care nu are divizori pari.
ONI GIM 2015, Clasa a V-a
| Problema | Inventie | Operații I/O |
inventie.in/inventie.out
|
|---|---|---|---|
| Limita timp | 0.3 secunde | Limita memorie |
Total: 2 MB
/
Stivă 2 MB
|
| Id soluție | #64214217 | Utilizator | |
| Fișier | inventie.cpp | Dimensiune | 1.33 KB |
| Data încărcării | 23 Aprilie 2026, 11:05 | Scor/rezultat | Eroare de compilare |
inventie.cpp: In function ‘int main()’: inventie.cpp:14:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] 14 | if(a>b) | ^~ inventie.cpp:15:30: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ 15 | cout<<a-b<<a+b<<endl;x=a-b; | ^ inventie.cpp:16:5: error: ‘else’ without a previous ‘if’ 16 | else | ^~~~ inventie.cpp:17:35: error: expected ‘;’ before ‘else’ 17 | cout<<a-b<<a+b<<endl;x=b-a | ^ | ; 18 | else | ~~~~ inventie.cpp:28:15: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation] 28 | for(int i=1; i<=m; i++) | ^~~ inventie.cpp:30:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’ 30 | nmx=m; | ^~~ inventie.cpp:57:7: error: expected primary-expression before ‘}’ token 57 | } | ^ inventie.cpp:61:7: error: expected primary-expression before ‘;’ token 61 | fout<<; | ^ inventie.cpp:8:27: warning: unused variable ‘mxs’ [-Wunused-variable] 8 | unsigned long long n,a,b,mxs=0,mxa=0,mns=0,mna=0,x,y; | ^~~ inventie.cpp:8:33: warning: unused variable ‘mxa’ [-Wunused-variable] 8 | unsigned long long n,a,b,mxs=0,mxa=0,mns=0,mna=0,x,y; | ^~~ inventie.cpp:8:39: warning: unused variable ‘mns’ [-Wunused-variable] 8 | unsigned long long n,a,b,mxs=0,mxa=0,mns=0,mna=0,x,y; | ^~~ inventie.cpp:8:45: warning: unused variable ‘mna’ [-Wunused-variable] 8 | unsigned long long n,a,b,mxs=0,mxa=0,mns=0,mna=0,x,y; | ^~~
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Inventie 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ă.