Nein, wenn du 'vierzehn' eingibst, dann ist in der Variable WertEin (String) 'vierzehn' gespeichert.
Wenn du nun mit der Funktion val probierst, Zeichen (d.h. Buchstaben) umzuwandeln, dann wird in der
Variable Code (integer) der Fehlertyp zurückgegeben!
Du wirst solange 'gezwungen', eine korrekte, gültige Eingabe einzugeben, bis Code=0 ist!
Delphi-Quellcode:
function SichereEingabe(Text: String): Integer;
var
Wert, Code: Integer;
WertEin: String;
begin
repeat
Write(Text+' ');
Readln(WertEin);
Val(WertEin,Wert,Code); //Wenn Code <> 0, dann war in der Eingabe ein ungültiges Zeichen
if Code <> 0 then
Writeln('Ungültige Eingabe');
until Code=0;
SichereEingabe := Wert;
end;
mfg
devnull