[Lekcja 15] Zadanie domowe - kalkulator
Ostatnio zmodyfikowano 2013-02-21 00:48
azbest22 Temat założony przez niniejszego użytkownika |
[Lekcja 15] Zadanie domowe - kalkulator » 2013-02-21 00:48:05 Witam Mam Problem z kalkulatorem z zadania domowego. Mam błedy przy kompilacji ale dotyczą one czyszczenia stringów pod linuxem ;/ wklejam kodzik i to co kompilator wywala #include<iostream> #include<limits> #include<string> using namespace std; main() { float liczba1 = 0; float liczba2 = 0; int znak = 1; bool text = true; const string znaki = "Wybierz działanie:\n[1]dodawanie\n[2]odejmowanie\n[3]mnożenie\n[4]dzielenie\n[0]Wyjście\n"; do { cin.clear(); cin.ignore( numeric_limits < streamsize >::max(), "\n" ); cout << "podaj liczbę"; cin >> liczba1; text = cin.good(); if( text == false ) { cout << "to nie jest liczba"; } else { cout << liczba1 << "\n" << znaki; } } while( text == true ); do { do { cin.clear(); cin.ignore( numeric_limits < streamsize >::max(), "\n" ); cin >> znak; text = cin.good(); if(( text == false ) ||( znak > 4 ) ||( znak < 0 ) ) { cout << "nieprawidłowa operacja\n" << znaki << "\n"; } else { cout << "podaj drugą liczbę:\n"; } } while( text == true ); do { cin.clear(); cin.ignore( numeric_limits < streamsize >::max(), "\n" ); cout << "podaj liczbę"; cin >> liczba2; text = cin.good(); if( text == false ) { cout << "to nie jest liczba"; } else { switch( znak ) { case 0: { return 0; break; } case 1: { liczba1 = liczba1 + liczba2; break; } case 2: { liczba1 = liczba1 - liczba2; break; } case 3: { liczba1 = liczba1 * liczba2; break; } case 4: { if( liczba2 == 0 ) { cout << "nie dzielimy przez 0!!!!!!!!!!"; text = false; } else { liczba1 = liczba1 / liczba2; } break; } } cout << liczba1 << "\n" << znaki << "\n"; } } while( text == true ); } while( znak == 0 ); return 0; }
/home/azbest22/programy/kurs007calcplus.cpp||In function ‘int main()’:| /home/azbest22/programy/kurs007calcplus.cpp|15|error: invalid conversion from ‘const char*’ to ‘int’| /home/azbest22/programy/kurs007calcplus.cpp|15|error: initializing argument 2 of ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore(std::streamsize, typename _Traits::int_type) [with _CharT = char, _Traits = std::char_traits<char>]’| /home/azbest22/programy/kurs007calcplus.cpp|33|error: invalid conversion from ‘const char*’ to ‘int’| /home/azbest22/programy/kurs007calcplus.cpp|33|error: initializing argument 2 of ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore(std::streamsize, typename _Traits::int_type) [with _CharT = char, _Traits = std::char_traits<char>]’| /home/azbest22/programy/kurs007calcplus.cpp|48|error: invalid conversion from ‘const char*’ to ‘int’| /home/azbest22/programy/kurs007calcplus.cpp|48|error: initializing argument 2 of ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore(std::streamsize, typename _Traits::int_type) [with _CharT = char, _Traits = std::char_traits<char>]’| ||=== Build failed: 6 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
staram sie dzialac na debianie z wsparciem code::blocks i g++ a swoją drogą sam kalkulator może być totalnie źle rozwiązany ale takie poprawki to będę robił dopiero jak będę miał możliwość odpalenia tego tworu więc proszę nie podpowiadać jak zbudować samą mechanike do tego zadania;] z góry dziękuję za pomoc Problemembła literówka i już został rozwiązany |
|
« 1 » |