Помощь - Поиск - Пользователи - Календарь
Полная версия: Не работает простая игрушка!
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Костян
Здорово народ. Нужна ваша помощь.На Паскале пишу совсем недавно. Написал простейшую прогу - перемещает символ по экрану в сответствии с нажатыми клавишами(вверх, вниз, вправо, влево). Почему то не идет найдите пожалуйста ошибку- буду очень благодарен!
Код
program igra;
uses crt;
const left=#75; right=#77; up=#72; down=#80;
var x, y, b: integer;
c: char;
begin
clrscr;
x:=1;
y:=1;
gotoxy(x,y);
write('a');
repeat
c:=readkey;
case c of
left:
begin
clrscr;
x:=x-1;
gotoxy(x,y);
write('a');
b:=b+1;
end;
right:
begin
clrscr;
x:=x+1;
gotoxy(x,y);
write('a');
b:=b+1;
end;
up:
begin
clrscr;
y:=y+1;
gotoxy(x,y);
write('a');
b:=b+1;
end;
down:
begin
clrscr;
y:=y-1;
gotoxy(x,y);
write('a');
b:=b+1;
end;
until
b=10;
readkey;
end.
volvo
Костян,
во-первых, кнопки курсора - это "расширенные" клавиши - первая часть кода = #0, вторая - то, что ты указал... Второе - у тебя не было End закрывающего Case... Ну, и наконец - ты перепутал знаки при нажатии "Вверх" и "Вниз"... blum.gif
program igra;
uses crt;
const
left=#75; right=#77; up=#72; down=#80;
var
x, y, b: integer;
c: char;
begin
clrscr;
x:=1;
y:=1;
gotoxy(x,y);
write('a');
repeat
c:=readkey;
case c of
#0: case readkey of
left: begin
clrscr;
x:=x-1;
gotoxy(x,y);
write('a');
b:=b+1;
end;
right: begin
clrscr;
x:=x+1;
gotoxy(x,y);
write('a');
b:=b+1;
end;
up: begin
clrscr;
y:=y-1;
gotoxy(x,y);
write('a');
b:=b+1;
end;
down: begin
clrscr;
y:=y+1;
gotoxy(x,y);
write('a');
b:=b+1;
end;

end;

end;

until b=10;
readkey;
end.
Костян
Большое спасиба!!!!!!!!!!!!!!!! yes2.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.