PASCAL编程中如何实现人机互动

来源:百度知道 编辑:UC知道 时间:2024/05/31 10:13:16
简单的输入语句似乎不能满足我们的要求(我还是新手啊)。打个比方,小游戏中按下“UP”上键画面中的人物便会向上移动,编写程序时怎样实现这样的调控方式呢?(输入调用语句似乎没办法表示方向键)
keypressed和readkey到底是什么东西啊?我不懂谁来教教我

var
a:array[1..3,1..4]of char;
i,j,x,y:integer;oper:char;
procedure print;
begin
writeln('^^^^^^^^');
writeln(a[1,1],'-',a[1,2],'-',a[1,3],'-',a[1,4]);
writeln(a[2,1],'-',a[2,2],'-',a[2,3],'-',a[2,4]);
writeln(a[3,1],'-',a[3,2],'-',a[3,3],'-',a[3,4]);
writeln('^^^^^^^^');
for i:=1 to 18 do writeln;
end;
begin

for i:=1 to 3 do
begin
for j:=1 to 4 do a[i,j]:='O';
end;
x:=3;y:=4;
a[x,y]:=chr(2);a[2,2]:='X';a[2,3]:='X';a[1,3]:='X';a[1,1]:=chr(1);
print;
repeat
writeln('where are you going?(wsad)');
readln(oper);
case oper of
's':begin if (x<>3)and(a[x+1,y]<>'X') then begin a[x+1,y]:=chr(2);a[x,y]:='O';x:=x+1;y:=y; end; end;
'a':begin if (y<>1)and(a[x,y-1]<