Detalii evaluare #54090717

Rezumat problemă

Se dă un număr n, întreg și care va fi citit într-o variabilă pe 16 biți, cu semn. Calculați, într-o variabilă de același tip (și apoi afișați pe ecran valoarea acestei variabile) ceea ce se obține interschimbând cei doi octeți ai variabilei inițiale (secvența primilor 8 biți ajunge, în aceeași ordine pe ultimele 8 poziții, și invers).

Detalii

Problema swapbytes Operații I/O tastatură/ecran
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #54090717 Utilizator Ivan Miruna (IvanMiruna)
Fișier swapbytes.cpp Dimensiune 245 B
Data încărcării 19 Noiembrie 2024, 15:55 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

swapbytes.cpp: In function 'int main()':
swapbytes.cpp:12:22: error: no match for 'operator|' (operand types are 'std::basic_ostream<char>' and 'short unsigned int')
     cout<< (short) y | x;

                      ^
swapbytes.cpp:12:22: note: candidates are:
In file included from /usr/include/c++/4.8/ios:42:0,
                 from /usr/include/c++/4.8/istream:38,
                 from /usr/include/c++/4.8/sstream:38,
                 from /usr/include/c++/4.8/complex:45,
                 from /usr/include/c++/4.8/ccomplex:38,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/bits/ios_base.h:81:3: note: constexpr std::_Ios_Fmtflags std::operator|(std::_Ios_Fmtflags, std::_Ios_Fmtflags)
   operator|(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
   ^
/usr/include/c++/4.8/bits/ios_base.h:81:3: note:   no known conversion for argument 1 from 'std::basic_ostream<char>' to 'std::_Ios_Fmtflags'
/usr/include/c++/4.8/bits/ios_base.h:123:3: note: constexpr std::_Ios_Openmode std::operator|(std::_Ios_Openmode, std::_Ios_Openmode)
   operator|(_Ios_Openmode __a, _Ios_Openmode __b)
   ^
/usr/include/c++/4.8/bits/ios_base.h:123:3: note:   no known conversion for argument 1 from 'std::basic_ostream<char>' to 'std::_Ios_Openmode'
/usr/include/c++/4.8/bits/ios_base.h:163:3: note: constexpr std::_Ios_Iostate std::operator|(std::_Ios_Iostate, std::_Ios_Iostate)
   operator|(_Ios_Iostate __a, _Ios_Iostate __b)
   ^
/usr/include/c++/4.8/bits/ios_base.h:163:3: note:   no known conversion for argument 1 from 'std::basic_ostream<char>' to 'std::_Ios_Iostate'
In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:65:0,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/bitset:1425:5: note: template<unsigned int _Nb> std::bitset<_Nb> std::operator|(const std::bitset<_Nb>&, const std::bitset<_Nb>&)
     operator|(const bitset<_Nb>& __x, const bitset<_Nb>& __y) _GLIBCXX_NOEXCEPT
     ^
/usr/include/c++/4.8/bitset:1425:5: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   'std::basic_ostream<char>' is not derived from 'const std::bitset<_Nb>'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/c++/4.8/valarray:587:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note: template<class _Dom1, class _Dom2> std::_Expr<std::_BinClos<std::__bitwise_or, std::_Expr, std::_Expr, _Dom1, _Dom2>, typename std::__fun<std::__bitwise_or, typename _Dom1::value_type>::result_type> std::operator|(const std::_Expr<_Dom1, typename _Dom1::value_type>&, const std::_Expr<_Dom2, typename _Dom2::value_type>&)
     _DEFINE_EXPR_BINARY_OPERATOR(|, __bitwise_or)
     ^
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   'std::basic_ostream<char>' is not derived from 'const std::_Expr<_Dom1, typename _Dom1::value_type>'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/c++/4.8/valarray:587:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note: template<class _Dom> std::_Expr<std::_BinClos<std::__bitwise_or, std::_Expr, std::_Constant, _Dom, typename _Dom::value_type>, typename std::__fun<std::__bitwise_or, typename _Dom1::value_type>::result_type> std::operator|(const std::_Expr<_Dom1, typename _Dom1::value_type>&, const typename _Dom::value_type&)
     _DEFINE_EXPR_BINARY_OPERATOR(|, __bitwise_or)
     ^
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   'std::basic_ostream<char>' is not derived from 'const std::_Expr<_Dom1, typename _Dom1::value_type>'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/c++/4.8/valarray:587:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note: template<class _Dom> std::_Expr<std::_BinClos<std::__bitwise_or, std::_Constant, std::_Expr, typename _Dom::value_type, _Dom>, typename std::__fun<std::__bitwise_or, typename _Dom1::value_type>::result_type> std::operator|(const typename _Dom::value_type&, const std::_Expr<_Dom1, typename _Dom1::value_type>&)
     _DEFINE_EXPR_BINARY_OPERATOR(|, __bitwise_or)
     ^
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   mismatched types 'const std::_Expr<_Dom1, typename _Dom1::value_type>' and 'short unsigned int'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/c++/4.8/valarray:587:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note: template<class _Dom> std::_Expr<std::_BinClos<std::__bitwise_or, std::_Expr, std::_ValArray, _Dom, typename _Dom::value_type>, typename std::__fun<std::__bitwise_or, typename _Dom1::value_type>::result_type> std::operator|(const std::_Expr<_Dom1, typename _Dom1::value_type>&, const std::valarray<typename _Dom::value_type>&)
     _DEFINE_EXPR_BINARY_OPERATOR(|, __bitwise_or)
     ^
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   'std::basic_ostream<char>' is not derived from 'const std::_Expr<_Dom1, typename _Dom1::value_type>'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/c++/4.8/valarray:587:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note: template<class _Dom> std::_Expr<std::_BinClos<std::__bitwise_or, std::_ValArray, std::_Expr, typename _Dom::value_type, _Dom>, typename std::__fun<std::__bitwise_or, typename _Dom1::value_type>::result_type> std::operator|(const std::valarray<typename _Dom::value_type>&, const std::_Expr<_Dom1, typename _Dom1::value_type>&)
     _DEFINE_EXPR_BINARY_OPERATOR(|, __bitwise_or)
     ^
/usr/include/c++/4.8/bits/valarray_after.h:409:5: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   'std::basic_ostream<char>' is not derived from 'const std::valarray<typename _Dom::value_type>'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94:0,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/valarray:1174:1: note: template<class _Tp> std::_Expr<std::_BinClos<std::__bitwise_or, std::_ValArray, std::_ValArray, _Tp, _Tp>, typename std::__fun<std::__bitwise_or, _Tp>::result_type> std::operator|(const std::valarray<_Tp>&, const std::valarray<_Tp>&)
 _DEFINE_BINARY_OPERATOR(|, __bitwise_or)
 ^
/usr/include/c++/4.8/valarray:1174:1: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   'std::basic_ostream<char>' is not derived from 'const std::valarray<_Tp>'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94:0,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/valarray:1174:1: note: template<class _Tp> std::_Expr<std::_BinClos<std::__bitwise_or, std::_ValArray, std::_Constant, _Tp, _Tp>, typename std::__fun<std::__bitwise_or, _Tp>::result_type> std::operator|(const std::valarray<_Tp>&, const _Tp&)
 _DEFINE_BINARY_OPERATOR(|, __bitwise_or)
 ^
/usr/include/c++/4.8/valarray:1174:1: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   'std::basic_ostream<char>' is not derived from 'const std::valarray<_Tp>'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94:0,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/valarray:1174:1: note: template<class _Tp> std::_Expr<std::_BinClos<std::__bitwise_or, std::_Constant, std::_ValArray, _Tp, _Tp>, typename std::__fun<std::__bitwise_or, _Tp>::result_type> std::operator|(const _Tp&, const std::valarray<_Tp>&)
 _DEFINE_BINARY_OPERATOR(|, __bitwise_or)
 ^
/usr/include/c++/4.8/valarray:1174:1: note:   template argument deduction/substitution failed:
swapbytes.cpp:12:24: note:   mismatched types 'const std::valarray<_Tp>' and 'short unsigned int'
     cout<< (short) y | x;

                        ^
In file included from /usr/include/c++/4.8/atomic:41:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:99,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/bits/atomic_base.h:71:3: note: constexpr std::memory_order std::operator|(std::memory_order, std::__memory_order_modifier)
   operator|(memory_order __m, __memory_order_modifier __mod)
   ^
/usr/include/c++/4.8/bits/atomic_base.h:71:3: note:   no known conversion for argument 1 from 'std::basic_ostream<char>' to 'std::memory_order'
In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:103:0,
                 from swapbytes.cpp:1:
/usr/include/c++/4.8/future:137:20: note: constexpr std::launch std::operator|(std::launch, std::launch)
   constexpr launch operator|(launch __x, launch __y)
                    ^
/usr/include/c++/4.8/future:137:20: note:   no known conversion for argument 1 from 'std::basic_ostream<char>' to 'std::launch'

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 swapbytes face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul 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ă.