program ask;
uses crt;

var i,j,len:integer;
    prompt,keys:string;
    ch:char;

begin
   if paramcount=0 then begin
      writeln('Ask 1.1, (c) Georg Horn'); writeln;
      writeln('  Aufruf: ask prompt [,key-list]'); writeln;
      writeln('Ask zeigt das prompt an und gibt einen Errorlevel von ''i'' zurck,'); 
      writeln('wenn die Taste Nr. ''i'' aus key-list gedrckt wird.');
   end else begin
      prompt:='';
      for i:=1 to paramcount do prompt:=prompt+paramstr(i)+' ';
      j:=length(prompt)-1; while (j>0) and (prompt[j]<>',') do dec(j);
      if j=0 then begin
         writeln; write(prompt); ch:=readkey; halt(0);
      end else begin
         keys:=copy(prompt,j+1,length(prompt)-j-1);
         prompt[0]:=chr(j-1); writeln; write(prompt,' ');
         repeat
            ch:=readkey; i:=1;
            while (i<=length(keys)) and (keys[i]<>ch) do inc(i);
         until i<=length(keys);
         write(keys[i]); halt(i);
      end;
   end;
end.
