Lekcja 15 - dwa kody
Ostatnio zmodyfikowano 2011-12-01 15:11
Mioka Temat założony przez niniejszego użytkownika |
Lekcja 15 - dwa kody » 2011-11-30 21:50:31 Napisałem kalkulator do lekcji piętnastej jednak mam pytanie czym się różni ten kod #include <iostream> #include <limits> using namespace std; int main() { char a, b; int dzialanie; do { cout << "wybierz dzialanie: \n[1]dodawanie \n[2] odejmowanie \n[3] mnożenie \n[4] dzilenie \n[5] opuść program" << endl; cin >> dzialanie; if( dzialanie == 5 ) { cout << "Dziękuje za skorzystanie z programu." << endl; return 0; } if( dzialanie > 5 ) do { { cout << "wybierz dzialanie poprawnie! \n wybierz dzialanie:" << endl; cin >> dzialanie; } } while( dzialanie <= 5 ); cout << "Podaj pierwszą liczbę" << endl; cin >> a; do { if( a == 0 ) { cout << "Podaj liczbę różną od zera" << endl; cin >> a; } } while( a == 0 ); cout << "Podaj drugą liczbę" << endl; cin >> b; do { if( b == 0 ) { cout << "Podaj liczbę różną od zera" << endl; cin >> b; } } while( b == 0 ); if( dzialanie <= 4 ) { switch( dzialanie ) { case 1: if( dzialanie == 1 ) cout << "wynik =" <<( a + b ) << endl; break; case 2: if( dzialanie == 2 ) cout << "wynik =" <<( a - b ) << endl; break; case 3: if( dzialanie == 3 ) cout << "wynik =" <<( a * b ) << endl; break; case 4: if( dzialanie == 4 ) cout << "wynik =" <<( a / b ) << endl; break; } } } while( dzialanie != 5 ); return 0; } Od tego: #include <iostream> #include <limits> using namespace std; int main() { int a, b; int dzialanie; do { cout << "wybierz dzialanie: \n[1]dodawanie \n[2] odejmowanie \n[3] mnożenie \n[4] dzilenie \n[5] opuść program" << endl; cin >> dzialanie; if( dzialanie == 5 ) { cout << "Dziękuje za skorzystanie z programu." << endl; } if( dzialanie > 5 ) do { { cout << "Czytaj!! \n wybierz dzialanie poprawnie:" << endl; cin >> dzialanie; } } while( dzialanie >= 5 ); if( dzialanie <= 4 ) { switch( dzialanie ) { case 1: if( dzialanie == 1 ) cout << "Podaj pierwszą liczbę"; cin >> a; if( a == 0 ) { do { cout << "podaj liczbę różną od zera" << endl; cin >> a; } while( a == 0 ); } cout << "Podaj druga liczbę"; cin >> b; if( b == 0 ) { do { cout << "podaj liczbę różną od zera" << endl; cin >> b; } while( b == 0 ); } cout << "wynik =" <<( a + b ) << endl; break; case 2: if( dzialanie == 2 ) cout << "Podaj pierwszą liczbę"; cin >> a; if( a == 0 ) { do { cout << "podaj liczbę różną od zera" << endl; cin >> a; } while( a == 0 ); } cout << "Podaj druga liczbę"; cin >> b; if( b == 0 ) { do { cout << "podaj liczbę różną od zera" << endl; cin >> b; } while( b == 0 ); } cout << "wynik =" <<( a - b ) << endl; break; case 3: if( dzialanie == 3 ) cout << "Podaj pierwszą liczbę"; cin >> a; if( a == 0 ) { do { cout << "podaj liczbę różną od zera" << endl; cin >> a; } while( a == 0 ); } cout << "Podaj druga liczbę"; cin >> b; if( b == 0 ) { do { cout << "podaj liczbę różną od zera" << endl; cin >> b; } while( b == 0 ); } cout << "wynik =" <<( a * b ) << endl; break; case 4: if( dzialanie == 4 ) cout << "Podaj pierwszą liczbę"; cin >> a; if( a == 0 ) { do { cout << "podaj liczbę różną od zera" << endl; cin >> a; } while( a == 0 ); } cout << "Podaj druga liczbę"; cin >> b; if( b == 0 ) { do { cout << "podaj liczbę różną od zera" << endl; cin >> b; } while( b == 0 ); } cout << "wynik =" <<( a / b ) << endl; break; } } } while( dzialanie != 5 ); return 0; } Dodam, że ten pierwszy jest błędny, nie pojawia się napis gdy wpisze się zero, gdzie tam popełniłem błąd? |
|
OSA_PL |
» 2011-11-30 22:38:52 Tutaj: char a, b; Zerknij sobie na tablicę znaków ASCII '0'= 48 |
|
Mioka Temat założony przez niniejszego użytkownika |
» 2011-12-01 15:11:37 Dzięki już działa :). |
|
« 1 » |