Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by ensaron,
19. Aug 2011
Ich hab in der Repeat..Until-Schleife ja noch eine For-Schleife drin, die Zeichen für Zeichen über die Eingabe drübergeht. Mit dem Break spring ich auf der For-Schleife, nicht aus der Repeat-Schleife, raus.
Anbei ein Screenshot-Beweis ^^ Und nein, den hab ich nicht gefälscht ^^
EDIT: Aaah du meinst, wenn ich das "AnsiChar" rausnehme - Ja dann bekomm ich ne Warnung, dass ich lieber...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by ensaron,
19. Aug 2011
Hinweis? Da gabs bei mir keinen.
Was wäre denn die bessere Variante?
PS: Das Break ist natürlich nicht notwendig, aber ich finds schöner, die Überprüfung der Eingabe abzubrechen, nachdem das erste ungültige Zeichen entdeckt wurde.
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by ensaron,
19. Aug 2011
Ok den Fall einer leeren Eingabe sollte man natürlich noch behandeln.
Und die Initialisierung von "erfolgreich" gehört natürlich in die Schleife, sonst wird nach einer falschen Eingabe keine andere Eingabe mehr als richtig betrachtet.
..
repeat
erfolgreich := True;
writeln('Bitte Hexadezimalzahl eingeben:');
readln(eingabe);
if not length(eingabe) >= 1 then
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by ensaron,
19. Aug 2011
repeat
EingabeEinlesenUndPruefen;
writeln('Beenden? ');
readln(y);
until y='y';
procedure EingabeEinlesenUndPruefen;
var