[Lekcja 17] Zadanie domowe - kalkulator oparty na funkcjach
Ostatnio zmodyfikowano 2014-12-03 09:17
| luk_88 | » 2014-12-02 20:37:04 bladegd, mozna sie z Tb jakos skontaktowac :) ? | 
|  | 
| bladegd Temat założony przez niniejszego użytkownika | » 2014-12-02 21:01:14 luk_88, jakoś można, napisz do mnie na GG | 
|  | 
| Rashmistrz | » 2014-12-02 21:19:21 | Czy chodziło Ci o coś takiego odnośnie cin.fail()? | 
 Chodziło mi o to:  } while( cin.fail() ) , a nie o: fail = cin.fail();} while( fail );
cout << "Witaj w kalkulatorze.\nWcisnij ENTER, aby rozpoczac." << endl;bool failA, failB;
 do {
 cout << "Wprowadz 1 liczbe: ";
 a = wczytajLiczbe();
 
 
| Nie ogarniam czy to na poważnie czy nie :P | 
 Tak. Założyłem, że usuniesz tamtą pętlę  (czego nie zrobiłeś i sprawiło Ci problemy) i zapomnisz zabezpieczyć przed dzieleniem przez zero,  a wypowiedziałem się tak jakbym kazał Ci  znaleźć sposób na podzielenie przez zero. :D | 
|  | 
| bladegd Temat założony przez niniejszego użytkownika | » 2014-12-02 22:16:34 No dobra pinkniej już się chyba nie da :) : #include <iostream>#include <limits>
 
 using namespace std;
 
 float wczytajLiczbe()
 {
 float a;
 do {
 cin.clear();
 cin.ignore( numeric_limits < streamsize >::max(), '\n' );
 cin >> a;
 } while( cin.fail() );
 
 return a;
 }
 
 void menu()
 {
 cout << "Co chcesz obliczyc?" << endl;
 cout << "[1] Dodawanie" << endl;
 cout << "[2] Odejmowanie" << endl;
 cout << "[3] Mnozenie" << endl;
 cout << "[4] Dzienlenie" << endl;
 cout << "[5] Rezygnuj" << endl;
 }
 
 void obliczenia( float a, float b, int choice )
 {
 switch( choice )
 {
 case 1:
 cout << a << " + " << b << " = " << a + b << endl;
 break;
 case 2:
 cout << a << " - " << b << " = " << a - b << endl;
 break;
 case 3:
 cout << a << " * " << b << " = " << a * b << endl;
 break;
 case 4:
 if( a == 0 || b == 0 )
 cout << "Panie nie da rady";
 else
 cout << a << " / " << b << " = " << a / b << endl;
 
 break;
 case 5:
 break;
 }
 }
 
 int main()
 {
 int choice;
 float a, b;
 cout << "Witaj w kalkulatorze.\nWcisnij ENTER, aby rozpoczac." << endl;
 cout << "Wprowadz 1 liczbe: ";
 a = wczytajLiczbe();
 cout << "Wprowadz 2 liczbe: ";
 b = wczytajLiczbe();
 menu();
 do
 {
 cout << "Wybierz dzialanie[1-5]: ";
 choice = wczytajLiczbe();
 } while( choice > 5 || choice < 1 );
 
 obliczenia( a, b, choice );
 
 return 0;
 }
 
 | 
|  | 
| Rashmistrz | » 2014-12-02 22:25:44 Perfecto!Wszystko jest dobrze!
 (Tak z mojego punktu widzenia.)
 
 Powodzenia w dalszej nauce! C:
 | 
|  | 
| bladegd Temat założony przez niniejszego użytkownika | » 2014-12-03 09:17:37 Serdeczne dzięki, za pomoc, przykłady, objaśnienia i przede wszystkim poświęcony przez Ciebie czas! | 
|  | 
| 1 2 « 3 » |