#1647
Cumpanit
Un număr natural nenul n
se numește cumpănit dacă în descompunerea sa în factori primi suma bazelor este egală cu suma exponenților. Să se scrie un program care citește două numere naturale nenule a
și b
și determină toate numerele cumpănite din intervalul închis [a, b]
.
ONI 2013, Clasa a X-a
Problema | Cumpanit | Operații I/O |
cumpanit.in /cumpanit.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 8 MB
/
Stivă 4 MB
|
Id soluție | #43089640 | Utilizator | |
Fișier | cumpanit.cpp | Dimensiune | 1.02 KB |
Data încărcării | 30 Martie 2023, 16:41 | Scor / rezultat | Eroare de compilare |
cumpanit.cpp:15:17: error: 'int pow [14]' redeclared as different kind of symbol int pow[PRIM_CNT] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; ^ In file included from /usr/include/features.h:374:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/os_defines.h:39, from /usr/include/i386-linux-gnu/c++/4.8/bits/c++config.h:426, from /usr/include/c++/4.8/iosfwd:38, from /usr/include/c++/4.8/ios:38, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/fstream:38, from cumpanit.cpp:1: /usr/include/i386-linux-gnu/bits/mathcalls.h:153:1: error: previous declaration of 'double pow(double, double)' __MATHCALL (pow,, (_Mdouble_ __x, _Mdouble_ __y)); ^ cumpanit.cpp: In function 'void check()': cumpanit.cpp:23:11: warning: pointer to a function used in arithmetic [-Wpointer-arith] if(pow[i]) { ^ cumpanit.cpp:25:20: warning: pointer to a function used in arithmetic [-Wpointer-arith] sum_exp += pow[i]; ^ cumpanit.cpp:25:12: warning: pointer to a function used in arithmetic [-Wpointer-arith] sum_exp += pow[i]; ^ cumpanit.cpp:25:12: error: invalid conversion from 'double (*)(double, double)throw ()' to 'int' [-fpermissive] cumpanit.cpp: In function 'void solve(int)': cumpanit.cpp:44:9: warning: pointer to a function used in arithmetic [-Wpointer-arith] pow[i]++; ^ cumpanit.cpp:44:10: error: ISO C++ forbids incrementing a pointer of type 'double (*)(double, double)throw ()' [-fpermissive] pow[i]++; ^ cumpanit.cpp:44:10: error: lvalue required as increment operand cumpanit.cpp:46:8: warning: pointer to a function used in arithmetic [-Wpointer-arith] pow[i] = 0; ^ cumpanit.cpp:46:10: error: assignment of read-only location '*(pow + ((sizetype)i))' pow[i] = 0; ^ cumpanit.cpp:46:10: error: cannot convert 'int' to 'double(double, double)throw ()' in assignment
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Cumpanit 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ă.