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

Kalkulator

Ostatnio zmodyfikowano 2018-11-21 23:20
Autor Wiadomość
wiktoro112
Temat założony przez niniejszego użytkownika
Kalkulator
» 2018-11-21 23:08:41
Witam!
Po długiej przerwie wróciłem do tego kursu, właśnie skończyłem robić kalkulator.
Moje pytanie jest następujące: Czy znalazła by się jakaś dobra duszyczka i przejrzała mój kod? Wszystko się dobrze komplikuje i działa lecz chciałbym się dowiedzieć czy dobrze wszystko rozumuje i ide w dobrym kierunku?
Pozdrawiam!
C/C++
#include <iostream>
#include <conio.h>
int main()
{
    int a;
    int b;
   
    using namespace std;
    cout << "=====================" << endl;
    cout << "Witaj w kalkulatorze!" << endl;
    cout << "=====================" << endl;
    cout << endl;
    cout << "Masz do wyboru: Dodawanie +, Odejmowanie -, Mnozenie *, Dzielenie /." << endl;
    cout << "Wybierasz: ";
    char znak = '+'; '-'; '*'; '/';
    cin >> znak;
    switch( znak )
    {
    case '+':
        cout << "\t=======================" << endl;
        cout << "\tWybrales dodawanie." << endl;
        cout << "\tPodaj liczbe a oraz b." << endl;
        cout << "\ta: ";
        cin >> a;
        {
            bool test = cin.fail();
            cout << "\tBlad? " << test << endl;
            cin.clear();
            cin.sync();
           
            cout << "\tb: ";
            cin >> b;
            bool test1 = cin.fail();
            cout << "\tBlad? " << test1 << endl;
            cin.clear();
            cin.sync();
        }
        cout << "\tWynik + twoich liczb to: " << a + b;
        cout << "\t Dziekuje za skorzystanie z mojej aplikacji!";
       
        break;
       
    case '-':
        cout << "\t=======================" << endl;
        cout << "\tWybrales odejmowanie." << endl;
        cout << "\tPodaj liczbe a oraz b." << endl;
        cout << "\ta: ";
        cin >> a;
        {
            bool test2 = cin.fail();
            cin.clear();
            cin.sync();
            cout << "\tBlad? " << test2 << endl;
            cout << "\tb: ";
            cin >> b;
            bool test3 = cin.fail();
            cin.fail();
            cin.sync();
            cout << "\tBlad? " << test3 << endl;
        }
        cout << "\tWynik twoich liczb to: " << a - b << endl;
        cout << "\t Dziekuje za skorzystanie z mojej aplikacji!";
       
        break;
       
    case '*':
        cout << "\t=======================" << endl;
        cout << "\tWybrales mnozenie." << endl;
        cout << "\tPodaj liczbe a oraz b." << endl;
        cout << "\ta: ";
        cin >> a;
        {
            bool test4 = cin.fail();
            cin.clear();
            cin.sync();
            cout << "\tBlad? " << test4 << endl;
            cout << "\tb: ";
            cin >> b;
            bool test5 = cin.fail();
            cin.fail();
            cin.sync();
            cout << "\tBlad? " << test5 << endl;
        }
        cout << "\tWynik twoich liczb to: " << a * b << endl;
        cout << "\t Dziekuje za skorzystanie z mojej aplikacji!";
       
        break;
       
    case '/':
        cout << "\t=======================" << endl;
        cout << "\tWybrales dzielenie." << endl;
        cout << "\tPodaj liczbe a oraz b." << endl;
        cout << "\ta: ";
        {
            cin >> a;
            bool blad = cin.fail();
            cin.clear();
            cin.sync();
            cout << "\tBlad? " << blad << endl;
            cout << "\tb: ";
            cin >> b;
            bool blad1 = cin.fail();
            cin.clear();
            cin.sync();
            cout << "\tBlad? " << blad1 << endl;
            cout << "\tWynik to " << a / b << endl;
            cout << "\t Dziekuje za skorzystanie z mojej aplikacji!";
            break;
        }
        default:
        cout << "Nie wybrales nic ;(" << endl;
        break;
       
       
       
       
       
       
       
       
       
       
       
       
       
       
    }
    getch();
   
    return 0;
}
P-172922
pekfos
» 2018-11-21 23:12:51
C/C++
char znak = '+'; '-'; '*'; '/';
cin >> znak;
Te magiczne przypisania nic nie robią, skoro i tak wczytujesz zaraz wartość do tej zmiennej. A jakbyś nie wczytywał, do zmiennej przypisujesz tam znak plusa. Cała reszta to instrukcje bez efektów.
P-172923
YooSy
» 2018-11-21 23:16:20
... i co będzie gdy
b
 będzie równe 0 przy dzieleniu?
P-172924
wiktoro112
Temat założony przez niniejszego użytkownika
» 2018-11-21 23:20:25
Poprawie. Serdeczne dziękuję za pomoc!
Dobranoooc
P-172925
« 1 »
  Strona 1 z 1