Hali, kaptam egy olyan feladatot, hogy írjak egy olyan progit, amiben van egy A betű, és azt, tudom mozgatni a nyilakkal, és a ESC-vel lépjen ki!
Eddig megírt progi(1):
program csillag;
uses crt;
var
x,y,ny,nx,i:integer;
key:char;
procedure bal(x,y:integer);
Begin
clrscr;
x:=x;
y:=y-1;
gotoxy(x,y);
write('A');
End;
procedure jobb(x,y:integer);
Begin
clrscr;
x:=x;
y:=y+1;
gotoxy(x,y);
write('A');
End;
procedure fel(x,y:integer);
Begin
clrscr;
y:=y;
x:=x+1;
gotoxy(x,y);
write('A');
End;
procedure le(x,y:integer);
Begin
clrscr;
y:=y;
nx:=x-1;
gotoxy(nx,y);
write('A');
End;
Begin
x:=15;
y:=15;
repeat
x:=x;
y:=y;
gotoxy(x,y);
write('A');
key:=readkey;
case key of
#800 : Begin
bal(x,y);
End;
#72 : Begin
jobb(x,y);
End;
#75 : Begin
fel(x,y);
End;
#77 : Begin
le(x,y);
End;
end;
until key=#27;
end.
megírt program(2):
program csillag;
uses dos,crt;
var
x,nx,y,ny:integer;
key:char;
Begin
clrscr;
x:=15;
y:=15;
gotoxy(x,y);
write('A');
key:=readkey;
if key=#72 then
begin
ny:=y-1;
nx:=x;
clrscr;
gotoxy(nx,ny);
write('A');
end;
if key=#80 then
begin
ny:=y+1;
nx:=x;
clrscr;
gotoxy(nx,ny);
write('A');
end;
if key=#75 then
begin
nx:=x-1;
ny:=y;
clrscr;
gotoxy(nx,ny);
write('A');
end;
if key=#77 then
begin
nx:=x+1;
ny:=y;
clrscr;
gotoxy(nx,ny);
write('A');
end;
write(x,y,nx,ny);
readln;
exit;
end.
a (2)-ben nem akarodczik mozogni!
a (1) -ben meg csak 1 helyet mozog!
Megoldfást várnál!(mindegy, hogy case vagy if)
[ Szerkesztve ]
gsdfg