#875
Stiva
Să se scrie un program care gestionează o stivă de numere întregi. Inițial stiva este vidă. Programul va citi de la tastatură o listă de operații, care pot fi:
push X
– adaugă valoarea întreagă X
pe stivă;pop
– elimină elementul din vârful stivei;top
– afișează elementul din vârful stivei.Programul va realiza asupra stivei operațiile citite, în ordine. Afișările se fac pe ecran, câte o valoare pe linie.
Problema | Stiva | Operații I/O |
![]() |
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #47916412 | Utilizator | |
Fișier | stiva.cpp | Dimensiune | 704 B |
Data încărcării | 10 Ianuarie 2024, 03:45 | Scor / rezultat | Eroare de compilare |
stiva.cpp: In function 'void top()': stiva.cpp:17:19: warning: capture of variable 'varf' with non-automatic storage duration [enabled by default] rez[lung++]=[varf]; ^ stiva.cpp:3:14: note: 'int varf' declared here int st[1001],varf,rez[1001],lung; ^ stiva.cpp: In lambda function: stiva.cpp:17:24: error: expected '{' before ';' token rez[lung++]=[varf]; ^ stiva.cpp: In function 'void top()': stiva.cpp:17:17: error: invalid user-defined conversion from 'top()::__lambda0' to 'int' [-fpermissive] rez[lung++]=[varf]; ^ stiva.cpp:17:23: note: candidate is: top()::__lambda0::operator void (*)()() const <near match> rez[lung++]=[varf]; ^ stiva.cpp:17:23: note: no known conversion for implicit 'this' parameter from 'void (*)()' to 'int' stiva.cpp: In function 'int main()': stiva.cpp:26:12: error: no match for 'operator<<' (operand types are 'std::istream {aka std::basic_istream<char>}' and 'char [5]') cin<<op; ^ stiva.cpp:26:12: note: candidates are: In file included from /usr/include/c++/4.8/string:52:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from stiva.cpp:1: /usr/include/c++/4.8/bits/basic_string.h:2753:5: note: template<class _CharT, class _Traits, class _Alloc> std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, const std::basic_string<_CharT, _Traits, _Alloc>&) operator<<(basic_ostream<_CharT, _Traits>& __os, ^ /usr/include/c++/4.8/bits/basic_string.h:2753:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<_CharT, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:471:5: note: template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, _CharT) operator<<(basic_ostream<_CharT, _Traits>& __out, _CharT __c) ^ /usr/include/c++/4.8/ostream:471:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<_CharT, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:476:5: note: template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, char) operator<<(basic_ostream<_CharT, _Traits>& __out, char __c) ^ /usr/include/c++/4.8/ostream:476:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<_CharT, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:482:5: note: template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, char) operator<<(basic_ostream<char, _Traits>& __out, char __c) ^ /usr/include/c++/4.8/ostream:482:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<char, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:488:5: note: template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, signed char) operator<<(basic_ostream<char, _Traits>& __out, signed char __c) ^ /usr/include/c++/4.8/ostream:488:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<char, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:493:5: note: template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, unsigned char) operator<<(basic_ostream<char, _Traits>& __out, unsigned char __c) ^ /usr/include/c++/4.8/ostream:493:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<char, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:513:5: note: template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, const _CharT*) operator<<(basic_ostream<_CharT, _Traits>& __out, const _CharT* __s) ^ /usr/include/c++/4.8/ostream:513:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<_CharT, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/ostream:612:0, from /usr/include/c++/4.8/iostream:39, from stiva.cpp:1: /usr/include/c++/4.8/bits/ostream.tcc:321:5: note: template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, const char*) operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s) ^ /usr/include/c++/4.8/bits/ostream.tcc:321:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<_CharT, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:530:5: note: template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const char*) operator<<(basic_ostream<char, _Traits>& __out, const char* __s) ^ /usr/include/c++/4.8/ostream:530:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<char, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:543:5: note: template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const signed char*) operator<<(basic_ostream<char, _Traits>& __out, const signed char* __s) ^ /usr/include/c++/4.8/ostream:543:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<char, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:548:5: note: template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const unsigned char*) operator<<(basic_ostream<char, _Traits>& __out, const unsigned char* __s) ^ /usr/include/c++/4.8/ostream:548:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<char, _Traits>' cin<<op; ^ In file included from /usr/include/c++/4.8/iostream:39:0, from stiva.cpp:1: /usr/include/c++/4.8/ostream:602:5: note: template<class _CharT, class _Traits, class _Tp> std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&&, const _Tp&) operator<<(basic_ostream<_CharT, _Traits>&& __os, const _Tp& __x) ^ /usr/include/c++/4.8/ostream:602:5: note: template argument deduction/substitution failed: stiva.cpp:26:14: note: 'std::istream {aka std::basic_istream<char>}' is not derived from 'std::basic_ostream<_CharT, _Traits>' cin<<op; ^ stiva.cpp:27:28: error: 'strcmp' was not declared in this scope if(strcmp(op,"push")==0){ ^ stiva.cpp:31:27: error: 'strcmp' was not declared in this scope if(strcmp(op,"pop")==0){ ^ stiva.cpp:33:18: error: too many arguments to function 'void pop()' pop(x); ^ stiva.cpp:10:6: note: declared here void pop(){ ^ stiva.cpp:35:27: error: 'strcmp' was not declared in this scope if(strcmp(op,"top")==0){ ^ stiva.cpp:37:18: error: too many arguments to function 'void top()' top(x); ^ stiva.cpp:15:6: note: declared here void top(){ ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Stiva 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ă.