Kalkulator z dodatkiem do..while
Ostatnio zmodyfikowano 2012-03-31 01:18
Vendi Temat założony przez niniejszego użytkownika |
Kalkulator z dodatkiem do..while » 2012-03-30 21:59:04 Mój kod: #include <iostream> int main() { int dodawanie; int dodawanie2; int wybor; do { std::cout << "Wybierz akcje:\n1.Dodawanie\n2.Odejmowanie\n3.Mnozenie\n4.Dzielenie" << std::endl; std::cout << "Akcja: "; std::cin >> wybor; if( wybor > 0 ) std::cout << "Dobry wybor." << std::endl; else; std::cout << "Blad!"; switch( wybor ) { case 1: std::cout << "Podaj dwie liczby: " << std::endl; std::cout << "Pierwsza: "; std::cin >> dodawanie; if( dodawanie >= 0 ); else std::cout << "Blad, dalsza operacja nie powiedzie sie." << std::endl; std::cout << "Druga: "; std::cin >> dodawanie2; std::cout << "Wynik: " << dodawanie + dodawanie2 << std::endl; break; case 2: std::cout << "Podaj dwie liczby: " << std::endl; std::cout << "Pierwsza: "; std::cin >> dodawanie; std::cout << "Druga: "; std::cin >> dodawanie2; std::cout << "Wynik: " << dodawanie - dodawanie2 << std::endl; break; case 3: std::cout << "Podaj dwie liczby: " << std::endl; std::cout << "Pierwsza: "; std::cin >> dodawanie; std::cout << "Druga: "; std::cin >> dodawanie2; std::cout << "Wynik: " << dodawanie * dodawanie2 << std::endl; break; case 4: std::cout << "Podaj dwie liczby: " << std::endl; std::cout << "Pierwsza: "; std::cin >> dodawanie; std::cout << "Druga: "; std::cin >> dodawanie2; std::cout << "Wynik: " << dodawanie / dodawanie2 << std::endl; break; default: std::cout << "\nBledny wybor, dostepne opcje to 1,2,3,4!"; } while( 10 == 20 ); return 0; }
Co tu mam źle? |
|
npHard |
» 2012-03-30 22:16:01 |
|
Vendi Temat założony przez niniejszego użytkownika |
» 2012-03-30 22:32:05 Tak? Zmieniam przykładowo na while ( dodawanie >= 0 ) i to samo :( Już nie chodzi o samo to że to poplątane ale ma od początku lecieć a tu errory. |
|
SeaMonster131 |
» 2012-03-30 22:33:25 To może napiszesz jakie błędy masz podczas kompilacji? |
|
Vendi Temat założony przez niniejszego użytkownika |
» 2012-03-30 22:48:30 Głupi ja, przepraszam. Compiling: C:\Users\Kmputer\Desktop\Untitled1.cpp C:\Users\Kmputer\Desktop\Untitled1.cpp: In function 'int main()': C:\Users\Kmputer\Desktop\Untitled1.cpp:31: error: case label '2' not within a switch statement C:\Users\Kmputer\Desktop\Untitled1.cpp:39: error: case label '3' not within a switch statement C:\Users\Kmputer\Desktop\Untitled1.cpp:47: error: case label '4' not within a switch statement C:\Users\Kmputer\Desktop\Untitled1.cpp:55: error: case label not within a switch statement C:\Users\Kmputer\Desktop\Untitled1.cpp:59: error: expected 'while' at end of input C:\Users\Kmputer\Desktop\Untitled1.cpp:59: error: expected '(' at end of input C:\Users\Kmputer\Desktop\Untitled1.cpp:59: error: expected primary-expression at end of input C:\Users\Kmputer\Desktop\Untitled1.cpp:59: error: expected ')' at end of input C:\Users\Kmputer\Desktop\Untitled1.cpp:59: error: expected ';' at end of input C:\Users\Kmputer\Desktop\Untitled1.cpp:59: error: expected '}' at end of input Process terminated with status 1 (0 minutes, 0 seconds) 10 errors, 0 warnings
|
|
Gumovvy |
» 2012-03-30 23:04:43 Nie do końca rozumiem twojego warunku w pętli while(10 == 20)
|
|
SeaMonster131 |
» 2012-03-30 23:16:12 Brakuje Ci zamknięcia bloku: } zaraz po switch. |
|
Vendi Temat założony przez niniejszego użytkownika |
» 2012-03-30 23:35:31 Brakowało ale była też masa błędów, spojrzałem dokładnie do lekcji z if..else oraz switch i wykryłem błędy, dziwne że nie Wy bo były po prostu przerażające :) Uporałem się z problemem, nawet nie wiecie jak się ciesze, teraz tylko dodam sprawdzenia std::cin oraz warunki. Prawidłowy kod: #include <iostream> int main() { int dodawanie; int dodawanie2; int wybor; do { std::cout << "Wybierz akcje:\n1.Dodawanie\n2.Odejmowanie\n3.Mnozenie\n4.Dzielenie" << std::endl; std::cout << "\nAkcja: "; std::cin >> wybor; { if( wybor > 0 ) std::cout << "Dobry wybor." << std::endl; else std::cout << "Blad!" << std::endl; } switch( wybor ) { case 1: std::cout << "Podaj dwie liczby: " << std::endl; std::cout << "Pierwsza: "; std::cin >> dodawanie; std::cout << "Druga: "; std::cin >> dodawanie2; std::cout << "Wynik: " << dodawanie + dodawanie2 << std::endl; break; case 2: std::cout << "Podaj dwie liczby: " << std::endl; std::cout << "Pierwsza: "; std::cin >> dodawanie; std::cout << "Druga: "; std::cin >> dodawanie2; std::cout << "Wynik: " << dodawanie - dodawanie2 << std::endl; break; case 3: std::cout << "Podaj dwie liczby: " << std::endl; std::cout << "Pierwsza: "; std::cin >> dodawanie; std::cout << "Druga: "; std::cin >> dodawanie2; std::cout << "Wynik: " << dodawanie * dodawanie2 << std::endl; break; case 4: std::cout << "Podaj dwie liczby: " << std::endl; std::cout << "Pierwsza: "; std::cin >> dodawanie; std::cout << "Druga: "; std::cin >> dodawanie2; std::cout << "Wynik: " << dodawanie / dodawanie2 << std::endl; break; default: std::cout << "\nBledny wybor, dostepne opcje to 1,2,3,4!"; break; } } while ( dodawanie >= 0 ); return 0; }
Czy możecie powiedzieć co zrobić żeby wyjść z programu? Za pomocą "case". Gumovvy, Twoja odpowiedź wydała mi się błędem, czemu nie mógłbym stosować dwóch zmiennych w całym programie gdy tylko raz je wczytuje? |
|
« 1 » 2 |