[GELÖST]Programm nach falscher Passworteingabe beenden[GELÖST]



  • Hallo,

    Wie kann ich mein Programm beenden wenn der Benutzer 3 mal das falsche Passwort eingegeben hat?

    Ich meine gehts auch anders als:

    if(pwd == "richtig")
    {
        //Anweisungen
    }
    else
    {
        //Ende
    }
    

    thx im Voraus



  • bool login ()
    {
       int anzahl = 0;
    
       while (anzahl < 3) {
          eingabe = frageNachPasswort();
    
          if (eingabe = "richtig")
             return true;
    
          ++anzahl;
       }
    
       return false;
    }
    


  • Helium schrieb:

    bool login ()
    {
       int anzahl = 0;
    
       while (anzahl < 3) {
          eingabe = frageNachPasswort();
    
          if (eingabe = "richtig")
             return true;
    
          ++anzahl;
       }
       
    
       return false;
    }
    

    Wie ich die Funktion schreibe ist mir klar aber ich muss dann erst wieder die ganzen Anweisungen in ner if ausführen. Ich meine es ca so:

    int main()
    {
        cin >> pwd;
        //wenn richtig viele zeilen Code ca hier
    
        //wenn falsch beenden
         return 0;
    }
    

    oder kann ich es nur mit einer if machen?



  • int main ()
    {
       bool korrekteEingabe = login();
       if (!korrekteEingabe)
          return 1;
    
       // nicht ellen langer Code, weil man das nicht macht, sondern schön aufgegliedert in viele Unterfunktionen
    
       return 0;
    }
    


  • Geht noch einbisschen kürzer:

    int main () 
    { 
          if (!login())
              return 1; 
    
          // nicht ellen langer Code, weil man das nicht macht, sondern schön aufgegliedert in viele Unterfunktionen
    
       return 0; 
    }
    


  • @ mikey habs schon gelöst außerdem muss noch eine Fehlermeldung ausgegeben werden.



  • mikey schrieb:

    Geht noch einbisschen kürzer:

    In der Regel würde ich es vermutlich genau so machen, wie du. Aber ich habe die Erfahrung gemacht, dass Anfänger teilweise meine umständliche Variante schneller verstehen.



  • Okay 😉 Ich denke, in dem Zusammenhang dürfte es Digger jetzt verstanden haben.


Anmelden zum Antworten