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

Powtarzanie switcha w pętli

Ostatnio zmodyfikowano 2013-07-31 00:43
Autor Wiadomość
Bohaterowicz
Temat założony przez niniejszego użytkownika
» 2013-07-31 00:04:52
POkazuje się błąd w kompilowniu, a konkretniej podświetla mi ostatnie "cin.get();" z początku myślałem że to przez to że "while(..)" nie było zakończone średnikiem, ale jak dodaje średnik to po kompilacji pokazuje się puste okineko. Preawdopodobnie nie kompilowałeś tego bo podałem tylko kawałek kodu, więc teraz dam cały byś mógł to skompilować. (nie mam zielonego pojęcie dlaczego to nie działa)
C/C++
#include <iostream>

using namespace std;

double dodaj( double a, double b );
double odjac( double a, double b );
double mnozyc( double a, double b );
double dzielic( double a, double b );


int main() {
    double x, y;
    int wyb;
    cout << "Jakie obliczenie chcesz wykonac?" << endl;
    do {
        cout << "1. Dodawanie \n2. Odejmowanie \n3. Mnozenie \n4. Dzielenie \n5 Wyjscie" << endl;
        cin >> wyb;
        switch( wyb ) {
        case 1:
            cout << "Podaj pierwsza liczbe: " << endl;
            cin >> x;
            cout << "Podaj druga liczbe: " << endl;
            cin >> y;
            cout << "Wynik to: " << dodaj( x, y );
            cin.get();
            break;
           
        case 2:
            cout << "Podaj pierwsza liczbe: " << endl;
            cin >> x;
            cout << "Podaj druga liczbe: " << endl;
            cin >> y;
            cout << "Wynik to: " << odjac( x, y );
            cin.get();
            break;
           
        case 3:
            cout << "Podaj pierwsza liczbe: " << endl;
            cin >> x;
            cout << "Podaj druga liczbe: " << endl;
            cin >> y;
            cout << "Wynik to: " << mnozyc( x, y );
            cin.get();
            break;
           
        case 4:
            cout << "Podaj pierwsza liczbe: " << endl;
            cin >> x;
            cout << "Podaj druga liczbe: " << endl;
            cin >> y;
            cout << "Wynik to: " << dzielic( x, y );
            cin.get();
            break;
           
        case 5:
            return 0;
        }
       
    } while( wyb != 5 )
         cin.get();
   
    return 0;
}


//***************** funkcje kalkulatora ************************************
double dodaj( double a, double b ) {
    double wynik;
    wynik = a + b;
    return wynik;
}

double odjac( double a, double b ) {
    double wynik;
    wynik = a - b;
    return wynik;
}

double mnozyc( double a, double b ) {
    double wynik;
    wynik = a * b;
    return wynik;
}

double dzielic( double a, double b ) {
    double wynik;
    wynik = a / b;
    return wynik;
}
P-89082
damian19dk
» 2013-07-31 00:21:36
Teraz powinno wszystko działać. Nie wiem, czego to Cię nauczy, bo powinieneś dojść do tego sam( chociażby przez wielogodzinne czytanie 1 i 2 poziomu niniejszego kursu)(TO NIE REKLAMA!)
C/C++
#include <iostream>

using namespace std;

double dodaj( double a, double b );
double odjac( double a, double b );
double mnozyc( double a, double b );
double dzielic( double a, double b );


int main()
{
    double x, y;
    int wyb;
    for(; wyb != 5; )
    {
        cout << "Jakie obliczenie chcesz wykonac?" << endl;
        cout << "1. Dodawanie \n2. Odejmowanie \n3. Mnozenie \n4. Dzielenie \n5 Wyjscie" << endl;
        cin >> wyb;
        switch( wyb ) {
        case 1:
            cout << "Podaj pierwsza liczbe: " << endl;
            cin >> x;
            cout << "Podaj druga liczbe: " << endl;
            cin >> y;
            cout << "Wynik to: " << dodaj( x, y ) << endl;
            cin.get();
            break;
           
        case 2:
            cout << "Podaj pierwsza liczbe: " << endl;
            cin >> x;
            cout << "Podaj druga liczbe: " << endl;
            cin >> y;
            cout << "Wynik to: " << odjac( x, y ) << endl;
            cin.get();
            break;
           
        case 3:
            cout << "Podaj pierwsza liczbe: " << endl;
            cin >> x;
            cout << "Podaj druga liczbe: " << endl;
            cin >> y;
            cout << "Wynik to: " << mnozyc( x, y ) << endl;
            cin.get();
            break;
           
        case 4:
            cout << "Podaj pierwsza liczbe: " << endl;
            cin >> x;
            cout << "Podaj druga liczbe: " << endl;
            cin >> y;
            cout << "Wynik to: " << dzielic( x, y ) << endl;
            cin.get();
            break;
           
        case 5:
            return 0;
        }
    }
    cin.get();
    return 0;
}


//***************** funkcje kalkulatora ************************************
double dodaj( double a, double b )
{
    double wynik;
    wynik = a + b;
    return wynik;
}

double odjac( double a, double b )
{
    double wynik;
    wynik = a - b;
    return wynik;
}

double mnozyc( double a, double b )
{
    double wynik;
    wynik = a * b;
    return wynik;
}

double dzielic( double a, double b )
{
    double wynik;
    wynik = a / b;
    return wynik;
}

EDIT: Nie uznaj mojej wypowiedzi za obelgę, czy coś w tym stylu, ale programowanie wymaga cierpliwości, dlatego efekty tak szybko nie przychodzą. Po prostu: musisz dłużej nad tym posiedzieć...
P-89086
Bohaterowicz
Temat założony przez niniejszego użytkownika
» 2013-07-31 00:43:52
Dzięki, działa. Rozumiem że lepiej jest dochodzić do wszystkiego samemu, lecz cały dzień bawię się w C++ i z żadnym zadaniem w kursie się tak nie męczyłem jak z tą pętlą, a koniecznie chciałem zakończyć ten mój mały projekt "dzisiaj". Wielkie dzięki!
P-89087
1 « 2 »
Poprzednia strona Strona 2 z 2