Показать сообщение отдельно
Старый 03.09.2017, 19:07   #4 (permalink)
derba
Member
 
Аватар для derba
 
Регистрация: 19.07.2017
Адрес: Украииа
Сообщений: 3,599
Сказал(а) спасибо: 50
Поблагодарили 5 раз(а) в 3 сообщениях
Репутация: 23905
По умолчанию

А лучше использовать команду window, ее можно легко двигать, я когда то подобное делал. и под клавиши управления курсором.


вот текст под клавиши wasd.
Цитата:
{Квадрат управляется wasd клавишами}
uses crt;
const N=5; {размер квадрата}
Label 1;
var
c,i,j,k,s,x:integer;
b:string;
A:array[1..N,1..N] of string;
begin

textcolor (0);textbackground(15); clrscr;{Белый фон черные буквы очистить экран}
{символы квадрата вводим в матрицу}
for i:=1 to N do
begin
for j:=1 to N do
begin
if(j=1) or (i=1) or (i=N)or (j=N) then
A[i,j]:='*' {Символ стенки квадрата}
else
A[i,j]:='+'; { Cимвол тела квадрата}
end;
{------------}
end;
C:=0; s:=0;
1: {метка возврата после нажатия клавиши}
{-----------}
clrscr; {Очистим старую фигуру}
{------------}
For k:=1 to c do {Количество раз}
Writeln; {подвинули квадрат вниз}
For i:=1 to N do
{Рисуем фигуру на новом месте}
Begin
For x:=1 to s do {количество раз }
Write(' '); {подвинули вправо}
For j:=1 to N do
begin

Write(a[i,j]);
end;
Writeln;


end;

b:=readkey; { Нажимаем клавишу}
{-----------}
If b='s' then {Вниз}
begin
C:=C+1;
Goto 1;
end;
{------------}
If b='w' then {вверх}
begin
If c>0 then
C:=C-1;
Goto 1;
{----------}
end;

If b='d' then
begin {вправо}
s:=s+1;
Goto 1;
end;
If b='a' then {влево}
begin
If s>0 then
s:=s-1;
Goto 1;
end;
end.
Изображения
 

Последний раз редактировалось derba; 03.09.2017 в 19:12
derba вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070