Лао-Цзы : Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
Гость, а ты будешь пробовать продукт, в котором по словам-же разработчика есть недоработки ? Некачественный товар - никому не нужен, как и производитель, создавший его!
--------------------
Помогая друг другу, мы справимся с любыми трудностями! "Не опускать крылья!" (С)
Исходники нужно оформлять в теги кода, чтобы смайлы и прочее в нём вдруг не появились.
Такс. С самого начала ерунда. Ты пишешь "нажмите на любую кнопку". Лучше писать "клавишу", но поскольку ты используешь readln, то "энтер". После этого включается графический режим, какой writeln? С delay надо разобраться. На быстрых машинах лучше использовать новый crt или патчить имеющийся, соответственно delay(1000) станет как и положено 1 секунда. Яблоко подкрасил, а то бледное, незрелое или наоборот, гнилое Приделай паузу.
uses new_CRT, Graph; type TPoint = record X, Y: integer; end; MAS = array[1..1000] of TPoint; label 23,24; var A: MAS; aa, ag, N, C, sp, speed: integer; T1: TPoint; Key: Char; S: string;
procedure PAINT(T: TPoint; N: integer); begin case N of 1: SetColor(White); 2: SetColor(Black); 3: begin SetColor(Red); for aa:=2 to 7 do Circle(T.X*15-8+52, T.Y*15-8+52, aa); exit; end; 4: Begin SetColor(Black); for aa:=2 to 7 do Circle(T.X*15-8+52, T.Y*15-8+52, aa); exit; end; end; Rectangle(T.X*15-15+52, T.Y*15-15+52, T.X*15+52, T.Y*15+52); end; procedure GAMEOVER(A: MAS; N: integer; var Key: char); var I: integer; begin if (A[N].X=0) or (A[N].X=26) or (A[N].Y=0) or (A[N].Y=26) then Key:='q'; for I:=1 to N-1 do if (A[N].X=A[I].X) and (A[N].Y=A[I].Y) then Key:='q'; end;
procedure METKA(var T1: TPoint); begin T1.X:=Random(25)+1; T1.Y:=Random(25)+1; Paint(T1, 3); end; procedure SNAKE(A: MAS; N: integer; Key: char; var B: MAS); var T: TPoint; I, X, Y: integer; begin case Key of 'w': begin X:=0; Y:=-1; end; 'a': begin X:=-1; Y:=0; end; 's': begin X:=0; Y:=1; end; 'd': begin X:=1; Y:=0; end; end; T:=A[1]; for I:=1 to N-1 do A[I]:=A[I+1]; A[N].X:=A[N].X+X; A[N].Y:=A[N].Y+Y; PAINT(T, 2); for I:=1 to N do PAINT(A[I], 1); for I:=1 to N do B[I]:=A[I]; end;