70 likes | 312 Views
Имитация движения. в Турбо Паскале. Наиболее простой способ имитации движения на экране. Включает в себя следующие этапы:. Задание позиций вывода Вывод объекта определённым цветом («рисование») Вывод объекта цветом фона («стирание»).
E N D
Имитация движения в Турбо Паскале
Наиболее простой способ имитации движения на экране Включает в себя следующие этапы: • Задание позиций вывода • Вывод объекта определённым цветом («рисование») • Вывод объекта цветом фона («стирание»)
Задача 1. Вывести на экран в текстовом режиме и управлять движением какого-либо символа или строки символов Пояснение: Эффект стирания достигается выводом в указанной позиции одного или нескольких пробелов.
PROGRAM upr_simv; uses crt; Const S=‘СЛОВО'; Sp=' ';{Число пробелов в Sp неменьшечисласимволовв S} Var c:char;x,y:integer; BEGINclrscr; x:=40;y:=12; gotoxy(x,y); write(s); Repeat c:=readkey; gotoxy(x,y);write(Sp);{Стираем на старом месте} case ord(c) of 72:y:=y-1; { изменяем координаты}{72 - код↑} 80:y:=y+1;{80– код ↓} 75:x:=x-1; {75– код ←} 77:x:=x+1;{77– код →} end; gotoxy(x,y);write(s);{Выводим на новом месте} Until ord(c)=32; END.
Задача 2.Создать «бегущую строку» в текстовом режиме экрана
Задача 3. Перемещать клавишами круг, используя графический режим экрана
PROGRAM dv_kruga; uses crt, Graph; Var grDriver:Integer; grMode:Integer;ErrCode:Integer; c:char; x,y,r:integer; BEGINgrDriver:=detect; grMode:=2; InitGraph(grDriver,grMode,'c:\TP7\BGI'); x:=100;y:=100;r:=50; Setcolor(red); circle(x,y,r); REPEAT c:=readkey;Setcolor(black); circle(x,y,r); Case ord(c) of 72:y:=y-10; {изменяем координаты} 80:y:=y+10; 75:x:=x-10; 77:x:=x+10; end; Setcolor(red); circle(x,y,r); Until ord ( c ) =32; readLn; CloseGraph; END.