Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » C++ | Rechner Fehlerbehebung

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
03.03.2016, 17:01 Uhr
~gast555123
Gast


Hallo,
ich bin in C++ ein absoluter Neuling und wollte mal versuchen einen Rechner mit IF-Bedingungen zu programmieren (Konsole). Aber wenn ich zwei Zahlen und die Rechenart eingebe beendet sich das Programm sofort:


C++:
#include <iostream>

int main() {

    long zahl_eins, zahl_zwei, rechenart;


    // Zahlen eingeben

    std::cout << "1. Zahl | 2. Zahl | Rechenart (plus, min, mal):" << std::endl;

    std::cin >> zahl_eins >> zahl_zwei >> rechenart;



                if(rechenart == 'plus'){

            
                    std::cout << "Das Ergebnis lautet: " << zahl_eins + zahl_zwei << std::endl;

                } else if(rechenart == 'min'){

        
                std::cout << "Das Ergebnis lautet: " << zahl_eins - zahl_zwei << std::endl;

                } else if(rechenart == 'mal'){

        
                std::cout << "Das Ergebnis lautet: " << zahl_eins * zahl_zwei << std::endl;

                }
        
        

    system("pause");

}




Danke jetzt schonmal
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
03.03.2016, 18:56 Uhr
Tommix



Hallo,
Rechenart ist keine Zahl.

C++:
#include <iostream>
#include <string>

int main() {

    long zahl_eins, zahl_zwei;
    std::string rechenart;

    // Zahlen eingeben

     std::cout << "1. Zahl | 2. Zahl | Rechenart (plus, min, mal):" << std::endl;

    std::cin >> zahl_eins >> zahl_zwei >> rechenart;



    if(rechenart == "plus"){


        std::cout << "Das Ergebnis lautet: " << zahl_eins + zahl_zwei << std::endl;

    } else if(rechenart == "min"){


        std::cout << "Das Ergebnis lautet: " << zahl_eins - zahl_zwei << std::endl;

    } else if(rechenart == "mal"){


        std::cout << "Das Ergebnis lautet: " << zahl_eins * zahl_zwei << std::endl;

    }



    system("pause");

}


Etwas gemein, daß der Compiler 'plus' als long akzeptiert. Ab 5 Zeichen hättest Du gleich 'ne Fehlermeldung gekriegt.

Gruß, Tommix

Dieser Post wurde am 03.03.2016 um 18:57 Uhr von Tommix editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
03.03.2016, 19:17 Uhr
~f.-th.
Gast


Alternative:


C++:
#include <iostream>


int main() {

    long zahl_eins, zahl_zwei;
    char rechenart;


    // Zahlen eingeben

    std::cout << "1. Zahl | 2. Zahl | Rechenart (plus, min, mal):" << std::endl;

    std::cin >> zahl_eins >> zahl_zwei >> rechenart;

    if(rechenart == '+'){
        std::cout << "Das Ergebnis lautet: " << zahl_eins + zahl_zwei << std::endl;
    } else if(rechenart == '-'){
        std::cout << "Das Ergebnis lautet: " << zahl_eins - zahl_zwei << std::endl;
    } else if(rechenart == '*'){
        std::cout << "Das Ergebnis lautet: " << zahl_eins * zahl_zwei << std::endl;
    }
    system("pause");
}


Eventuell noch den Text anpassen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
03.03.2016, 19:47 Uhr
~gast555123
Gast


Vielen Dank für die schnelle Antwort...
Wie immer sind die Sachen im Grunde doch so einfach, aber naja...
Schönen Abend noch
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: