[Back to ENTRY SWAG index] [Back to Main SWAG index] [Original]
var i : word;
{ Simple error checking }
function Getnbr1 (msg:string) : word;
  var w : word;
  begin
    repeat
      write(msg);
      {$I-} readln(w); {$I+}
    until ioresult=0;
    Getnbr1 := w;
  end;
{ fancier error checking }
function Getnbr2 (msg:string) : word;
  var x : longint;
      s : string;
      w : word;
      i : integer;
  begin
    repeat
      write(msg);
      readln(s);
      val(s,x,i);
    until (i=0) and (x>=0) and (x<=65535);
    getnbr2 := x;
  end;
begin
  i := getnbr1('Please enter a number? '); writeln(i);
  i := getnbr2('Please enter a number? '); writeln(i);
end.
[Back to ENTRY SWAG index] [Back to Main SWAG index] [Original]