Detalii evaluare #54347505

Rezumat problemă

#38 Shift C++

Scrieţi definiția completă a subprogramului shift care primește prin intermediul parametrului n o valoare naturală nenulă (n≤100), iar prin intermediul parametrului x, un tablou unidimensional cu n componente. Fiecare componentă a acestui tablou este un număr întreg care are cel mult 8 cifre.

Subprogramul permută circular cu o poziţie spre stânga primele n elemente ale tabloului x și furnizează tabloul modificat tot prin parametrul x.

Detalii

Problema Shift Operații I/O tastatură/ecran
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #54347505 Utilizator Gheorghiu Mădălina (Madelaine390)
Fișier shift.cpp Dimensiune 369 B
Data încărcării 26 Noiembrie 2024, 11:43 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

shift.cpp: In function 'int shift(int, int*)':
shift.cpp:13:1: warning: no return statement in function returning non-void [-Wreturn-type]
 }

 ^
shift.cpp: In function 'int main()':
shift.cpp:19:8: error: no match for 'operator>>' (operand types are 'std::istream {aka std::basic_istream<char>}' and 'int*')
     cin>>v-1;

        ^
shift.cpp:19:8: note: candidates are:
In file included from /usr/include/c++/4.8/iostream:40:0,
                 from shift.cpp:1:
/usr/include/c++/4.8/istream:120:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__istream_type& (*)(std::basic_istream<_CharT, _Traits>::__istream_type&)) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(__istream_type& (*__pf)(__istream_type&))
       ^
/usr/include/c++/4.8/istream:120:7: note:   no known conversion for argument 1 from 'int*' to 'std::basic_istream<char>::__istream_type& (*)(std::basic_istream<char>::__istream_type&) {aka std::basic_istream<char>& (*)(std::basic_istream<char>&)}'
/usr/include/c++/4.8/istream:124:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__ios_type& (*)(std::basic_istream<_CharT, _Traits>::__ios_type&)) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>; std::basic_istream<_CharT, _Traits>::__ios_type = std::basic_ios<char>]
       operator>>(__ios_type& (*__pf)(__ios_type&))
       ^
/usr/include/c++/4.8/istream:124:7: note:   no known conversion for argument 1 from 'int*' to 'std::basic_istream<char>::__ios_type& (*)(std::basic_istream<char>::__ios_type&) {aka std::basic_ios<char>& (*)(std::basic_ios<char>&)}'
/usr/include/c++/4.8/istream:131:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(ios_base& (*__pf)(ios_base&))
       ^
/usr/include/c++/4.8/istream:131:7: note:   no known conversion for argument 1 from 'int*' to 'std::ios_base& (*)(std::ios_base&)'
/usr/include/c++/4.8/istream:168:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(bool&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(bool& __n)
       ^
/usr/include/c++/4.8/istream:168:7: note:   no known conversion for argument 1 from 'int*' to 'bool&'
/usr/include/c++/4.8/istream:172:7: note: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(short int&) [with _CharT = char; _Traits = std::char_traits<char>]
       operator>>(short& __n);
       ^
/usr/include/c++/4.8/istream:172:7: note:   no known conversion for argument 1 from 'int*' to 'short int&'
/usr/include/c++/4.8/istream:175:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(short unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(unsigned short& __n)
       ^
/usr/include/c++/4.8/istream:175:7: note:   no known conversion for argument 1 from 'int*' to 'short unsigned int&'
/usr/include/c++/4.8/istream:179:7: note: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(int&) [with _CharT = char; _Traits = std::char_traits<char>]
       operator>>(int& __n);
       ^
/usr/include/c++/4.8/istream:179:7: note:   no known conversion for argument 1 from 'int*' to 'int&'
/usr/include/c++/4.8/istream:182:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(unsigned int& __n)
       ^
/usr/include/c++/4.8/istream:182:7: note:   no known conversion for argument 1 from 'int*' to 'unsigned int&'
/usr/include/c++/4.8/istream:186:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(long& __n)
       ^
/usr/include/c++/4.8/istream:186:7: note:   no known conversion for argument 1 from 'int*' to 'long int&'
/usr/include/c++/4.8/istream:190:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(unsigned long& __n)
       ^
/usr/include/c++/4.8/istream:190:7: note:   no known conversion for argument 1 from 'int*' to 'long unsigned int&'
/usr/include/c++/4.8/istream:195:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(long long& __n)
       ^
/usr/include/c++/4.8/istream:195:7: note:   no known conversion for argument 1 from 'int*' to 'long long int&'
/usr/include/c++/4.8/istream:199:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(unsigned long long& __n)
       ^
/usr/include/c++/4.8/istream:199:7: note:   no known conversion for argument 1 from 'int*' to 'long long unsigned int&'
/usr/include/c++/4.8/istream:214:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(float&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(float& __f)
       ^
/usr/include/c++/4.8/istream:214:7: note:   no known conversion for argument 1 from 'int*' to 'float&'
/usr/include/c++/4.8/istream:218:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(double&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(double& __f)
       ^
/usr/include/c++/4.8/istream:218:7: note:   no known conversion for argument 1 from 'int*' to 'double&'
/usr/include/c++/4.8/istream:222:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long double&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(long double& __f)
       ^
/usr/include/c++/4.8/istream:222:7: note:   no known conversion for argument 1 from 'int*' to 'long double&'
/usr/include/c++/4.8/istream:235:7: note: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(void*&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]
       operator>>(void*& __p)
       ^
/usr/include/c++/4.8/istream:235:7: note:   no known conversion for argument 1 from 'int*' to 'void*&'
/usr/include/c++/4.8/istream:259:7: note: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__streambuf_type*) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__streambuf_type = std::basic_streambuf<char>]
       operator>>(__streambuf_type* __sb);
       ^
/usr/include/c++/4.8/istream:259:7: note:   no known conversion for argument 1 from 'int*' to 'std::basic_istream<char>::__streambuf_type* {aka std::basic_streambuf<char>*}'
In file included from /usr/include/c++/4.8/string:53: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 shift.cpp:1:
/usr/include/c++/4.8/bits/basic_string.tcc:996:5: note: template<class _CharT, class _Traits, class _Alloc> std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, std::basic_string<_CharT, _Traits, _Alloc>&)
     operator>>(basic_istream<_CharT, _Traits>& __in,
     ^
/usr/include/c++/4.8/bits/basic_string.tcc:996:5: note:   template argument deduction/substitution failed:
shift.cpp:19:12: note:   mismatched types 'std::basic_string<_CharT, _Traits, _Alloc>' and 'int*'
     cin>>v-1;

            ^
In file included from /usr/include/c++/4.8/istream:882:0,
                 from /usr/include/c++/4.8/iostream:40,
                 from shift.cpp:1:
/usr/include/c++/4.8/bits/istream.tcc:955:5: note: template<class _CharT2, class _Traits2> std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, _CharT2*)
     operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s)
     ^
/usr/include/c++/4.8/bits/istream.tcc:955:5: note:   template argument deduction/substitution failed:
shift.cpp:19:12: note:   deduced conflicting types for parameter '_CharT2' ('char' and 'int')
     cin>>v-1;

            ^
In file included from /usr/include/c++/4.8/istream:882:0,
                 from /usr/include/c++/4.8/iostream:40,
                 from shift.cpp:1:
/usr/include/c++/4.8/bits/istream.tcc:923:5: note: template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, _CharT&)
     operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c)
     ^
/usr/include/c++/4.8/bits/istream.tcc:923:5: note:   template argument deduction/substitution failed:
shift.cpp:19:12: note:   deduced conflicting types for parameter '_CharT' ('char' and 'int*')
     cin>>v-1;

            ^
In file included from /usr/include/c++/4.8/iostream:40:0,
                 from shift.cpp:1:
/usr/include/c++/4.8/istream:727:5: note: template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, unsigned char&)
     operator>>(basic_istream<char, _Traits>& __in, unsigned char& __c)
     ^
/usr/include/c++/4.8/istream:727:5: note:   template argument deduction/substitution failed:
shift.cpp:19:12: note:   cannot convert '(((int*)(& v)) + 4294967292u)' (type 'int*') to type 'unsigned char&'
     cin>>v-1;

            ^
In file included from /usr/include/c++/4.8/iostream:40:0,
                 from shift.cpp:1:
/usr/include/c++/4.8/istream:732:5: note: template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, signed char&)
     operator>>(basic_istream<char, _Traits>& __in, signed char& __c)
     ^
/usr/include/c++/4.8/istream:732:5: note:   template argument deduction/substitution failed:
shift.cpp:19:12: note:   cannot convert '(((int*)(& v)) + 4294967292u)' (type 'int*') to type 'signed char&'
     cin>>v-1;

            ^
In file included from /usr/include/c++/4.8/iostream:40:0,
                 from shift.cpp:1:
/usr/include/c++/4.8/istream:774:5: note: template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, unsigned char*)
     operator>>(basic_istream<char, _Traits>& __in, unsigned char* __s)
     ^
/usr/include/c++/4.8/istream:774:5: note:   template argument deduction/substitution failed:
shift.cpp:19:12: note:   cannot convert '(((int*)(& v)) + 4294967292u)' (type 'int*') to type 'unsigned char*'
     cin>>v-1;

            ^
In file included from /usr/include/c++/4.8/iostream:40:0,
                 from shift.cpp:1:
/usr/include/c++/4.8/istream:779:5: note: template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, signed char*)
     operator>>(basic_istream<char, _Traits>& __in, signed char* __s)
     ^
/usr/include/c++/4.8/istream:779:5: note:   template argument deduction/substitution failed:
shift.cpp:19:12: note:   cannot convert '(((int*)(& v)) + 4294967292u)' (type 'int*') to type 'signed char*'
     cin>>v-1;

            ^
In file included from /usr/include/c++/4.8/iostream:40:0,
                 from shift.cpp:1:
/usr/include/c++/4.8/istream:872:5: note: std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&&, _Tp&) [with _CharT = char; _Traits = std::char_traits<char>; _Tp = int*]
     operator>>(basic_istream<_CharT, _Traits>&& __is, _Tp& __x)
     ^
/usr/include/c++/4.8/istream:872:5: note:   no known conversion for argument 2 from 'int*' to 'int*&'
shift.cpp:19:11: warning: suggest parentheses around '-' inside '>>' [-Wparentheses]
     cin>>v-1;

           ^
shift.cpp: At global scope:
shift.cpp:29:5: error: expected unqualified-id before 'return'
     return 0;

     ^
shift.cpp:30:1: error: expected declaration before '}' token
 }

 ^

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema Shift face parte din a doua categorie. Pentru aceste probleme se folosește un program suport, furnizat de propunătorul problemei. Soluția propusă de tine va fi evaluată astfel:

  • Soluția propusă de tine este inclusă în programul suport, apoi acesta este compilat. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Datorită existenței programului suport, la compilare pot să apară erori sau avertismente care să nu se refere la instrucțiunile scrise de tine, dar care sunt datorate faptului că soluția ta nu este corectă.
  • Dacă programul suport a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

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ă.