Создать бегущую строку с изменением положения на экране верх - низ по нажатию клавиши 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.

Объяснение кода листинга программы

  1. Создается переменная a, которая представляет собой массив целых чисел.
  2. Создаются переменные s и s1, которые представляют собой строки.
  3. Создаются переменные i, k и y, которые представляют собой байты.
  4. Создается переменная c, которая представляет собой символ.
  5. Создается переменная f, которая представляет собой логическое значение.
  6. Выполняется очистка экрана.
  7. Строка s устанавливается в начальное состояние.
  8. Строка s1 устанавливается в начальное состояние.
  9. Устанавливается начальное положение курсора.
  10. Выводится сообщение в консоль.
  11. Запускается цикл, который повторяется до тех пор, пока не будет нажата клавиша #27.
  12. Внутри цикла выполняются следующие действия:
    • Строка s изменяется путем удаления одного символа.
    • Курсор перемещается к новому положению.
    • Строка s1 копируется из строки s.
    • Строка s обновляется путем добавления строки s1.
    • Проверяется, была ли нажата клавиша #66. Если да, то:
      • Увеличивается значение переменной y на значение из массива a.
      • Устанавливается новое положение курсора.
      • Строка s очищается.
      • Переменная f инвертируется.
    • Проверяется, была ли нажата клавиша #27. Если да, то цикл завершается.
  13. Конец программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.778 из 5
Похожие ответы