Brauche hilfe



  • Hallo bräuchte mal hilfe

    hab jetzt das prog geschreiben und habe keine ahnung wie ich es schaffe das wen buchstaben statt zahlen eingeben werden mir das programm "Falsche Eingabe ausspuckt.

    im mom sieht das so bie mir aus

    hoffe i-wer kann helfen

    #include <iostream.h>
    
    int main()
    
    {
    
    		float a;
    		float b;
    
    cout<<"geben sie die geschwindikeit ein   ";
    cin>> a;
    cout<<"\n\n";
    
    cout<<"geben sie das Limit ein   ";
    cin>> b;
    cout<<"\n\n";
    
    if (a<b )
    cout<<"falche eingab"<<endl;
    
    else if (a-5>=b+20)
    {
    cout<<" 3 Pkt und 50 euro"<<endl;
    }
    else if(a-5>b)
    {
    cout<<"15 euro"<<endl;
    }
    else if (a-5<=b)
    {
    cout<<"nix"<<endl;
    }
    
    cout<<"\n\n";
    
    return 0;
    }
    


  • Wie wärs mit:

    else
    {
    std::cout << "Falsche Eingabe!" << endl;
    }
    

    am Ende, sofern was ganz andres eingegeben wurde kommt dann immer "Falsche Eingabe!"

    PS: Binde am besten <iostream> ein. Außerdem kann cout und cin gar nicht funktionieren, wenn du std:: nicht mit angibst (oder oben einbinden), also:

    #include <iostream>
    using namespace std;
    


  • also das Program läuft so ist kein Prob sollte woll erwähnen das es sich um die Autoren edition von c handelt jedenfalls werd ich es so Probieren. aber geht das nicht auch i-wie über char?



  • habs probier und das Prog läuft jedoch wen ich es öffne fragt der zwar nach der geschwindigkeit wen ich dan z.B. ha eingebe Fragt er nciht mehr nach limit und spuckt nix aus



  • Wenn du etwas falsches eingibst, dann kann nichts mehr passieren.
    Du müsstest dann eine Schleife einbauen (z.B: do-while), damit er immer wieder abfragt.
    Ehm, als Compiler könntest du auch Visual C++ 2005 Express Edition



  • mhh da ich das ja im unterricht schreiben sollte, da laut meines lehrers das i-wie mit char funktionieren soll würd ich gern wissen wie das geht.... leider funktioniert das mit else
    {
    std::cout << "Falsche Eingabe!" << endl;
    }

    leider nicht 😡



  • Was genau funktioniert nicht?
    Lässt sich das Programm nicht kompilieren?
    Geht das Programm, aber wenn man ein Buchstabe eintippt passiert nicht's?

    Ansonsten googel mal nach "IsAlpha"



  • Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum C++/CLI mit .NET in das Forum C++ verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • doch es läuft ja also der befehl wir auch ausgeführt nur kommt nach dem ich zb. ha eingegen habe gleich zum ende und frag nciht mehr nach dem limit, auch sagt er mir stat Falsche Eingabe, och meno dumm gewählt aber er schreibt "nix"



  • keiner ne idee, schade



  • Hmm guck einfach ob das lesen erfolgreich war (!std::cin) ...



  • Versuchs dochmal hiermit!
    Aber ist auch keine optimale Lösung!
    Aber es geht zumindest mal und erfüllt deine Aufgaben!

    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        bool tempoOK=false;
        bool limitOK=false;
        float tempo=0;
        float limit=0;
        char temp;
        while (!tempoOK)
        {
              cout<<"Bitte geben sie ihr Tempo ein  :";
              cin>>tempo;
              if (cin.fail()||tempo<0)
              {
                 cin.clear();
                 cin.ignore();
                 system("cls");
                 cout<<"Es gab einen Fehler bei ihrer Tempoeingabe!!\n\n";
              }             
              else tempoOK=true;
        }    
        while (!limitOK)
        {
              cout<<"\n\nBitte geben sie das Tempolimit ein  :";
              cin>>limit;
              if (cin.fail()||limit<=0)
              {
                 cin.clear();
                 cin.ignore();
                 system("cls");
                 cout<<"Es gab einen Fehler bei ihrer Limiteingabe!!\n\n";
              }             
              else limitOK=true;
        }  
        cout<<"\n\nIhre Eingaben\nTempo:"<<tempo<<" Limit:"<<limit<<endl<<endl;
    
        if (tempo<limit )
           cout<<"Sie fahren zu langsam :P"<<endl;
    
        else if (tempo-5>=limit+20)
        {
         cout<<"3 Pkt und 50 euro"<<endl;
        }
        else if(tempo-5>limit)
        {
         cout<<"15 euro"<<endl;
         }
        else if (tempo-5<=limit)
        {
         cout<<"Sie brauchen nix zu bezahlen"<<endl;
        }
    
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    

    hoffe es kann dir helfen!



  • "Brauche hilfe"!!! ICH HABE ECHT AUF DEN ERSTEN BLICK GEWUSST UM WAS ES GEHT. GUT. WEITER SO.


Anmelden zum Antworten