TURBO PASCAL

Новости       

Программы

Turbo Pascal

Игры

Документация

"Странности"

FAQ

Ссылки

Благодарности 

Гостевая книга

Спонсор

От автора

 

Практическое задание N 1. 41

            1.  Создать "падающие символы" для прописных букв латинского алфавита с номерами кодов от 65 до 90. 

            2.  Создать "падающие символы" для строчных букв латинского алфавита с номерами кодов от 97 до 122. 

            Примечание: введите счетчики правильно и неправильно нажатых клавиш.  В конце программы выведите на экран результат работы счетчиков.

 

            Рассмотрим последовательность операторов,  позволяющих создать на экране "бегущую строку" символов.  Введем с клавиатуры надпись с выводом на экран и запомним строку символов в массиве cha.

 i:=0;  repeat i:=i+1;  read(cha[i])  until  cha[i]=#13;   n:=i-1;   

Ввод надписи заканчивается нажатием клавиши SpaceBar (последним символом надписи должен быть пробел),  затем Enter.  Число символов в надписи запоминается в переменной "n",  символ с кодом #13 не включается.

            Принцип создания "бегущей строки" символов заключается в выводе групп символов строки с позиции от 1 до "n" (первый символ,  два первых символа строки и т. д. ) и смещением влево позиции вывода первого символа группы.  Затем выводятся группы символов от "n-1" до 1 (строка без первого символа, строка без второго символа и т. д.) без изменения места вывода первого символа группы.  После вывода каждой группы символов следует задержка программы,  позволяющая "увидеть" группу символов.  При выводе каждая новая группа символов затирает предыдущую,  причем последний символ (SpaceBar) затирает символы при уменьшении группы выводимых символов.  Приведем пример операторов для создания "бегущей строки" символов.

Здесь n1 - номер первого выводимого символа,  n2 - номер последнего выводимого символа.

repeat

      for i:=1 to 2*n-1 do begin

         if i<=n then begin  n1:=1;  n2:=i;  gotoXY(n-i+1,5)  end

                else begin  n1:=i-n+1;  n2:=n;  gotoXY(1,5)   end;

      for j:=n1 to n2  do  write(cha[j]);                { вывод группы символов }

      delay(200);  end

until  keyPressed ;

 

На первую страницу

Rambler's Top100 PROext: Top 1000
Rambler's Top100

(с) Все права защищены.

По всем интересующим вопросам прошу писать электронный адрес

Hosted by uCoz