Создать бегущую строку с изменением положения на экране верх - низ по нажатию клавиши F8 - Turbo Pascal
Формулировка задачи:
Помогите создать программу бегущую строку с добавлением обработки клавишей F8, по нажатию которой строка будет менять положение на экране (верх - низ).
Решение задачи: «Создать бегущую строку с изменением положения на экране верх - низ по нажатию клавиши F8»
textual
Листинг программы
uses crt; const a:array[boolean] of integer=(-5,5); var s,s1:string; i,k,y:byte; c:char; f:boolean; begin clrscr; s:='Это бегущая строка Это бегущая строка Это бегущая строка '; s:=' '+s; k:=80-length(s); clrscr; y:=15; f:=false; writeln('Строка F8 выход Esc'); for i:=1 to k-1 do s:=s+' '; repeat delete(s,1,1); gotoxy(1,y); delay(50); delline; write(s); gotoXY(25,1); s1:=copy(s,1,1); s:=s+s1; if keypressed then begin c:=readkey; if c=#0 then c:=readkey; case c of #66:begin y:=y+a[f]; gotoXY(1,y-a[f]); delline; f:=not f; end; #27:exit; end; end; until c=#27; end.
Объяснение кода листинга программы
- Создается переменная
a
, которая представляет собой массив целых чисел. - Создаются переменные
s
иs1
, которые представляют собой строки. - Создаются переменные
i
,k
иy
, которые представляют собой байты. - Создается переменная
c
, которая представляет собой символ. - Создается переменная
f
, которая представляет собой логическое значение. - Выполняется очистка экрана.
- Строка
s
устанавливается в начальное состояние. - Строка
s1
устанавливается в начальное состояние. - Устанавливается начальное положение курсора.
- Выводится сообщение в консоль.
- Запускается цикл, который повторяется до тех пор, пока не будет нажата клавиша
#27
. - Внутри цикла выполняются следующие действия:
- Строка
s
изменяется путем удаления одного символа. - Курсор перемещается к новому положению.
- Строка
s1
копируется из строкиs
. - Строка
s
обновляется путем добавления строкиs1
. - Проверяется, была ли нажата клавиша
#66
. Если да, то:- Увеличивается значение переменной
y
на значение из массиваa
. - Устанавливается новое положение курсора.
- Строка
s
очищается. - Переменная
f
инвертируется.
- Увеличивается значение переменной
- Проверяется, была ли нажата клавиша
#27
. Если да, то цикл завершается.
- Строка
- Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д