program snake; uses crt; const bal=#75; fel=#72; jobb=#77; le=#80; esc=#27; max_hossz=200; var x,y,dx,dy,i,j,hossz:integer; ch:char; xk,yk:array[1..max_hossz]of integer; begin {játéktér} for i:=2 to 78 do begin gotoxy(i,2);write('#'); gotoxy(i,24);write('#');end; for i:=3 to 23 do begin gotoxy(2,i);write('#'); gotoxy(78,i);write('#');end; i:=1; x:=10; y:=10; dx:=1; dy:=0; xk[i]:=x; yk[i]:=y; hossz:=5; repeat if keypressed then begin ch:=readkey; if ch=#0 then ch:=readkey; end; case ch of bal: begin dx:=-1; dy:= 0; end; fel: begin dx:= 0; dy:=-1; end; jobb:begin dx:= 1; dy:= 0; end; le: begin dx:= 0; dy:= 1; end; end; x:=x+dx; y:=y+dy; if (x<2)or(x>78)or(y<2)or(y>24) then begin gotoxy(4,25);write('VEGE! - kilepes!'); readln; exit; end; gotoxy(x,y); write('O'); if i<=hossz then i:=i+1 else i:=1; if i<=hossz then j:=i+1 else j:=1; xk[i]:=x; yk[i]:=y; gotoxy(xk[j],yk[j]); write(' '); delay(300); until ch=esc; end.