Km/h Berechner Problem



  • Hi,

    ich bin gerade ein km/h Berechner am progrmmieren ich bin auch soweit fertig, aber ich hab irgendwo ein Fehler aber ich find ihn nicht!

    Hier der Quellcoder:

    #include <cstdlib>
    #include <iostream>

    using namespace std;

    int main(int argc, char *argv[])

    {
    //Kmh Berechner

    unsigned int strecke;
    double zeit;
    unsigned int speed;
    int eingabe;
    bool running = true;

    while (running)
    {
    cout << "<1> Programm STARTEN" << endl;
    cout << endl;
    cout << endl;

    cin >> eingabe;

    cout << endl;
    cout << endl;

    if ( eingabe==1 ) // Programm starten

    {

    cout << "Geben Sie die Strecke in Kilometer ein: " << endl;

    cin >> strecke;
    cout << endl;

    cout << "Geben Sie die Zeit in Stunden ein: " << endl;

    cin >> zeit;
    cout << endl;

    //km/h Berechnung

    speed = strecke/zeit;

    cout << " Die durchschnittliche Geschwindigkeit beträgt : " << speed << "km/h." << endl;

    cout << endl;
    cout << endl;

    }
    else
    {

    cout< "Keine gueltige Eingabe";
    cout << endl;

    }

    }

    return 0;

    }

    Danke schon mal für die Antworten!

    MfG

    Dennis1995

    PS: Ich bin noch ein Anfänger also ich lern erst C++ seid 2 Tagen, also seid mir bitte nicht böse wenn der Fehler einfach ist ^^.



  • Hallo,

    wie äußert sich der Fehler?

    PS: Codetags verwenden!

    Edit: fehlt hier eventuell was?

    cout< "Keine gueltige Eingabe"; 
    //->
    cout << "Keine gueltige Eingabe";
    


  • Wenn du ernsthaft willst, dass dir jemand hilft:
    - Bitte Code-Tags benutzen. Das erleichtert das lesen ungemein.
    - vernünftige Problembeschreibung.

    ich hab irgendwo ein Fehler aber ich find ihn nicht!

    Was ist der Fehler? Was funktioniert nicht, wie du es möchtest.

    Hilfreich ist auch das hier: http://www.c-plusplus.net/forum/200753


  • Mod

    Zeile 55: Da hast du ein < vergessen. Sagt dir die Fehlermeldung nicht eben genau das?

    P.S.: Und es wäre schön, wenn du sagen würdest, was für Fehler du hast, nicht nur, dass du einen hast.

    P.P.S: Und benutze bitte die cpp-Tags für Code (die Buttons unter den Smileys).



  • Hallo Dennis,

    Dennis1995 schrieb:

    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        //Kmh Berechner
        unsigned int strecke;
        double zeit;
        unsigned int speed; // <====== hier muss double stehen
        int eingabe;
        bool running = true;
    
        while (running)
        {
            cout << "<1> Programm STARTEN" << endl;
            cout << endl;
            cout << endl;
    
            cin >> eingabe;
    
            cout << endl;
            cout << endl;
    
            if ( eingabe==1 ) // Programm starten
            {
                cout << "Geben Sie die Strecke in Kilometer ein: " << endl;
    
                cin >> strecke;
                cout << endl;
    
                cout << "Geben Sie die Zeit in Stunden ein: " << endl;
    
                cin >> zeit;
                cout << endl;
    
                //km/h Berechnung
    
                speed = strecke/zeit;
    
                cout << " Die durchschnittliche Geschwindigkeit beträgt : " << speed << "km/h." << endl;
    
                cout << endl;
                cout << endl;
            }
            else
            {
                cout< "Keine gueltige Eingabe"; // <=== Syntax Fehler
                cout << endl;
            }
        }
        return 0;
    }
    

    mache in Zeile 11 aus dem unsigned int ein double und in Zeile 49 heißt es korrekt

    cout << "Keine gueltige Eingabe";
    

    :xmas2: Werner



  • Ich danke euch für die Anworten es klappt alles so wie es sein sollte 👍



  • Dennis1995 schrieb:

    Ich danke euch für die Anworten es klappt alles so wie es sein sollte 👍

    ja prima.

    Noch ein Tipp: in C++ ist es üblich, Variablen erst dann zu deklarieren, wenn man sie auch benötigt. Dein Code sähe dann so aus:

    #include <iostream> // ## inkludiere keine Header, die Du nicht brauchst
    
    using namespace std;
    
    int main() // ## lege keine Variablen an, die Du nicht benötigst
    {
        //Kmh Berechner
        for(;;) // ## Forever
        {
            cout << "<1> Programm STARTEN" << endl;
            cout << endl;
            cout << endl;
    
            int eingabe;
            cin >> eingabe;
    
            cout << endl;
            cout << endl;
    
            if ( eingabe==1 ) // Programm starten
            {
                cout << "Geben Sie die Strecke in Kilometer ein: " << endl;
    
                unsigned int strecke; // ## hier
                cin >> strecke;
                cout << endl;
    
                cout << "Geben Sie die Zeit in Stunden ein: " << endl;
    
                double zeit; // ## hier
                cin >> zeit;
                cout << endl;
    
                //km/h Berechnung
    
                double speed = strecke/zeit; // ## so isses richtig
    
                cout << " Die durchschnittliche Geschwindigkeit beträgt : " << speed << "km/h." << endl;
    
                cout << endl;
                cout << endl;
            }
            else
            {
                cout << "Keine gueltige Eingabe";
                cout << endl;
            }
        }
        return 0;
    }
    

    Dann wäre Dir das Problem in Zeile 36 auch eher aufgefallen.

    habe meine Änderungen mit '##' markiert.

    :xmas2: Werner



  • Hi,

    danke für den Hinweis. 👍



  • Du kannst es ja noch so machen, dass das Programm fragt, ob autobahn,(wegen 100 kann man ja nicht in Ortschaft fahren ^^) oder ob Landstrasse + Dorf. Aber ist warscheinlich etwas blöd oder?


Anmelden zum Antworten