Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Kalkulator rozdzial 15

Ostatnio zmodyfikowano 2017-03-18 15:26
Autor Wiadomość
Chowan
Temat założony przez niniejszego użytkownika
Kalkulator rozdzial 15
» 2017-03-18 14:05:49
Napisz prosty kalkulator, który będzie potrafił dodawać, odejmować, mnożyć i dzielić. Program ten ma działać następująco:
1. Wypisuje obecny wynik
2. Wprowadź liczbę
3. Wybierz działanie (jeżeli liczba różna od 0)
4. Wykonaj obliczenia (jeżeli liczba różna od 0)
5. Wróć do kroku 1.
6. Jeżeli wprowadzoną liczbą jest 0, zakończ program.

Czy kod ponizej jest ok. (wiem, że moge zamienić int na double)

i po co pisze się 

cin >> a;
aa = cin.good();
if( aa == true )...

czy nie wystarczy

cin >> a;
if (cin.good() == 1)...

C/C++
#include <iostream>
using namespace std;
int main()
{
    int operacja, a, b;
   
    cout << "=====================================================\n" << "                       MENU          \n" << "=====================================================" << endl;
    cout << "Dodawanie [1]\t Odejmowanie [2]\t Mnozenie [3]\nDzielenie [4]\t Rezygnacja [5]\n;" << endl;
   
    do {
        do
        {
            cin.clear();
            cin.sync();
            cout << " Podaj liczbe a " << endl;
            cin >> a;
            if( cin.good() == 1 && a != 0 )
            {
                do
                {
                    cin.clear(); cin.sync();
                    cout << " Podaj liczbe b " << endl;
                    cin >> b;
                    if( cin.good() == 1 && b != 0 )
                    { do
                        {
                            cout << " Polecenie z menu " << endl;
                            cin >> operacja;
                            switch( operacja )
                            {
                            case 1:
                                cout << "Wynik = " << a + b << endl;
                                break;
                               
                            case 2:
                                cout << "Wynik = " << a - b << endl;
                                break;
                               
                            case 3:
                                cout << "Wynik = " << a * b << endl;
                                break;
                               
                            case 4:
                                cout << "Wynik = " << a / b << endl;
                                break;
                            case 5:
                                return 0;
                                break;
                            default:
                                cout << " Nie poprawny wybór spróbuj jeszcze raz" << endl;
                               
                            } }
                        while( cin.good() == 1 && operacja > 5 );
                       
                    }
                   
                    else
                    cout << " Nie poprawny format danych" << endl; }
               
                while( cin.good() != 1 ); }
           
            else
                 cout << " Nie poprawny format danych " << endl; }
       
        while( cin.good() != 1 ); }
    while( a != 0 && b != 0 );
   
    return 0;
}

P-159089
carlosmay
» 2017-03-18 15:26:19
Wystarczy nawet:
C/C++
cin >> a;
if( cin.good() )
lub nawet
C/C++
if( cin >> a )
Wszystko zależy, co dla ciebie jest czytelniejsze.
P-159095
« 1 »
  Strona 1 z 1