Java: Versuche immer um 1 abziehen?

1 Antwort

Dein Code macht immer noch keinen Sinn und erfüllt die Aufgabe nicht. Erneut ein paar Anhaltspunkte:

  1. Warum machst du die Abfrage, ob "passwort" gleich ist zu "meinpasswort" in der setup-Methode und nicht nur in der login-Methode
  2. Warum verringerst du die Anzahl der Versuche in der setup-Methode, obwohl dort damit danach gar nicht mehr gearbeitet wird? Dort ist nicht mal eine Schleife enthalten, es bringt also gar nichts
  3. Warum speicherst du den Boolean, den dir deine Login-Methode nicht zurückgibt, in einer Variable und arbeitest damit? Oder, wenn du es nicht in einer Variable speichern willst, nutz deinen Aufruf der Login-Methode direkt in der if-Bedingung.
  4. Deine Login-Methode ist Sinnlos. Entweder entspricht der Inhalt der übergebenen Variable "passwort" eben dem String "password", dann wird true zurückgegeben (sofern Versuche größer 0 ist), sonst wird eben immer false zurückgegeben.
  5. Du hast genau eine einzige Nutzereingabe - am Anfang - danach wird das nie verändert. Du sollst bei jedem Versuch ein neues Passwort einlesen und eben das mit dem korrekten Passwort vergleichen! Implementiere das in deiner login-Funktion. Wenn das übereinstimmt, gibst du wahr zurück, sonst reduzierst du (im else-Block) eben versuche um 1, wie du es jetzt hier schon hast ...