#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 | #64214236 | Utilizator | |
| Fișier | inventie.cpp | Dimensiune | 1.42 KB |
| Data încărcării | 23 Aprilie 2026, 11:06 | Scor/rezultat | Eroare de compilare |
inventie.cpp:2:17: error: ‘td’ is not a namespace-name 2 | using namespace td; | ^~ inventie.cpp:3:1: error: ‘ifstream’ does not name a type 3 | ifstream cin("inventie.in"); | ^~~~~~~~ inventie.cpp:4:1: error: ‘ofstream’ does not name a type 4 | ofstream cout("inventie.out"); | ^~~~~~~~ inventie.cpp: In function ‘int main()’: inventie.cpp:9:5: error: ‘cin’ was not declared in this scope; did you mean ‘std::cin’? 9 | cin>>n; | ^~~ | std::cin In file included from inventie.cpp:1: /usr/include/c++/13/iostream:62:18: note: ‘std::cin’ declared here 62 | extern istream cin; ///< Linked to standard input | ^~~ inventie.cpp:14:13: error: ‘cout’ was not declared in this scope; did you mean ‘std::cout’? 14 | cout<<a-b<<a+b<<endl,x=a-b; | ^~~~ | std::cout /usr/include/c++/13/iostream:63:18: note: ‘std::cout’ declared here 63 | extern ostream cout; ///< Linked to standard output | ^~~~ inventie.cpp:14:29: error: ‘endl’ was not declared in this scope; did you mean ‘std::endl’? 14 | cout<<a-b<<a+b<<endl,x=a-b; | ^~~~ | std::endl In file included from /usr/include/c++/13/iostream:41: /usr/include/c++/13/ostream:735:5: note: ‘std::endl’ declared here 735 | endl(basic_ostream<_CharT, _Traits>& __os) | ^~~~ inventie.cpp:15:14: error: ‘cout’ was not declared in this scope; did you mean ‘std::cout’? 15 | else cout<<b-a<<a+b<<endly=b-a; | ^~~~ | std::cout /usr/include/c++/13/iostream:63:18: note: ‘std::cout’ declared here 63 | extern ostream cout; ///< Linked to standard output | ^~~~ inventie.cpp:15:30: error: ‘endly’ was not declared in this scope 15 | else cout<<b-a<<a+b<<endly=b-a; | ^~~~~ inventie.cpp:16:9: error: ‘else’ without a previous ‘if’ 16 | else cout<<<a+b<<endl; | ^~~~ inventie.cpp:16:14: error: ‘cout’ was not declared in this scope; did you mean ‘std::cout’? 16 | else cout<<<a+b<<endl; | ^~~~ | std::cout /usr/include/c++/13/iostream:63:18: note: ‘std::cout’ declared here 63 | extern ostream cout; ///< Linked to standard output | ^~~~ inventie.cpp:16:20: error: expected primary-expression before ‘<’ token 16 | else cout<<<a+b<<endl; | ^ inventie.cpp:16:26: error: ‘endl’ was not declared in this scope; did you mean ‘std::endl’? 16 | else cout<<<a+b<<endl; | ^~~~ | std::endl /usr/include/c++/13/ostream:735:5: note: ‘std::endl’ declared here 735 | endl(basic_ostream<_CharT, _Traits>& __os) | ^~~~ inventie.cpp:20:13: error: ‘m’ was not declared in this scope; did you mean ‘mn’? 20 | m=0; | ^ | mn inventie.cpp:21:26: error: ‘v’ was not declared in this scope 21 | while(y) m++,v[m]=y%10,y=y/10; | ^ inventie.cpp:22:26: error: ‘v’ was not declared in this scope 22 | while(x) m++,v[m]=x%10,x=x/10; | ^ inventie.cpp:23:18: error: ‘mnx’ was not declared in this scope; did you mean ‘nmx’? 23 | if(m>mnx) | ^~~ | nmx inventie.cpp:25:45: error: ‘v’ was not declared in this scope 25 | for(int i=1;i<=m;i++) mx[i]=v[i]; | ^ inventie.cpp:32:24: error: ‘v’ was not declared in this scope 32 | if(v[i]>mn[i]) | ^ inventie.cpp:40:45: error: ‘v’ was not declared in this scope 40 | for(int i=1;i<=m;i++) mn[i]=v[i]; | ^ inventie.cpp:39:13: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] 39 | if(m<nmn) | ^~ inventie.cpp:41:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ 41 | nmn=m; | ^~~ inventie.cpp:43:21: error: ‘m’ was not declared in this scope; did you mean ‘mn’? 43 | else if(m==nmx) | ^ | mn inventie.cpp:47:24: error: ‘v’ was not declared in this scope 47 | if(v[i]>mn[i]) | ^ inventie.cpp:52:25: warning: init-statement in selection statements only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 52 | else if(v[i]>mn[i] break; | ^ inventie.cpp:53:12: error: expected primary-expression before ‘}’ token 53 | } | ^ inventie.cpp:52:42: error: expected ‘)’ before ‘}’ token 52 | else if(v[i]>mn[i] break; | ~ ^ | ) 53 | } | ~ inventie.cpp:53:12: error: expected primary-expression before ‘}’ token 53 | } | ^
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ă.