Lazarus: Wie kann ich nach dem dritten Versuch das Programm abbrechen lassen?
Folgende Aufgabe:
Wir wollen ein Programm schreiben, welches eine Passwortabfrage simuliert. Der Nutzer soll drei Eingabeversuche haben und nach der dritten Falscheingabe eine Nachricht erhalten, dass der Account gesperrt wurde. Hinterlege das Passwort „InformatikistToll!“ in einer Variable im Code.
Ich habe angefangen, eine Variable für das Passwort zu machen und eine Variable für die Passworteingabe.
Dann
if Passwort = PasswortEingabe then
begin
writeln(fertig halt)
Aber wie kann ich nach dem dritten Versuch das Ganze abbrechen lassen?
1 Antwort
Vom Beitragsersteller als hilfreich ausgezeichnet
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Computer, programmieren, Informatik
Es wäre angebracht, eine Schleife zur Lösung dieser Aufgabe heranzuziehen. Zum Beispiel for-do. Sie wiederholt ihren Rumpf so oft, wie es der Schleifenkopf vorgibt.
var
attempt: integer;
input: String;
inputWasValid: Boolean = False;
begin
for attempt := 1 to 3 do
begin
{ ask for password ... }
{ check ... }
end;
end;
Innerhalb des Rumpfs liest du die Eingabe des Nutzers und prüfst sie. Wenn das Passwort korrekt war, kannst du eine boolsche Variable auf True setzen und mit dem break-Befehl die Schleife sofort verlassen.
break;
Im Anschluss kannst du anhand des Zustandes der boolschen Variable herausfinden, ob sich der Nutzer innerhalb der vorgegebenen Anzahl an Versuchen anmelden konnte oder nicht.
und was muss in den rumpf?