|
|
|||||||||||||||||||||||||||||||||||||||||||||
|
Среда
08 февраля 2012 года |
|||||||||||||||||||||||||||||||||||||||||||||
|
Добрый день, |
|||||||||||||||||||||||||||||||||||||||||||||
![]() |
Язык программирования Турбо Паскаль был создан Никлаусом Виртом в 1970, после его участия в работе комитета разработки стандарта языка Алгол, как язык для обучения процедурному программированию. |
Помимо Borland Pascal и Borland Delphi, существует еще множество других компиляторов Паскаля, как коммерческих, так и бесплатных. Коммерческие версии компиляторов Паскаля отличает законченность и надежность. Зато некоммерческие компиляторы быстро развиваются, и, как правило, разрабатываются множеством энтузиастов по всему миру, которые постоянно вносят улучшения и исправления в новые версии. Ну и, естественно, за использование компилятора они не требуют ни денег, ни лицензий, что немаловажно в ситуации, сложившейся в нашей маленькой, но гордой республике.
При обработке информации часто возникает необходимость приостановить выполнение программы:
1) на время, определяемое самим пользователем (последующий запуск программы осуществляется либо нажатием какой-либо клавиши, либо с помощью кнопки манипулятора мышь (пример использования ма-нипулятора мышь для указанных целей дан в разделе 5.9.5 — программа DemoMouseText);
2) на фиксированное время, заданное в самой программе.
В следующих разделах приводится несколько стандартных процедур, решающих данные задачи.
Простейшим решением данной задачи является запись в соответствующем месте процедуры Readln (оператор Read использовать нельзя) или функции ReadKey.
Пример использования процедуры Readln.
PROGRAM DemoReadln;
USES Crt;
BEGIN
ClrScr;
Writeln ('Выполнение программы приостановлено.');
Writeln;
Write ('Для продолжения нажмите клавишу Enter ....');
Readln;
Writeln;
Write ('Выполнение программы продолжается. Ждите 5 секунд. ');
Delay (5000);
END.
Для продолжения выполнения программы достаточно нажать клавишу Enter. Недостатком данного решения является обязательное нажатие клавиши Enter, а не любой клавиши, что увеличивает вероятность ошибочного действия пользователя и в ряде случаев приводит к непредсказуемым результатам.
Язык Паскаль был одним языков, созданных для обучения и получивших популярность, как и новичков, так и в серьёзном программировании. При его создании успешно решена задача сочетания сравнительной простоты языка с потенциальной широтой области его применений. В отличии от своих предшественников (в частности Бейсика) Паскаль допускает разнообразные типы составных объектов: запись - упорядоченный набор про именованных объектов произвольных типов; файл - упорядоченный набор однородных данных, размещаемых во внешней памяти; множество - набор элементов одного типа, кодируемых отрезками натурального ряда или произвольными именами. В Паскале имеется оператор варианта, т. е. выбора одной из нескольких альтернативных последовательностей(ветвей) операторов по вычисляемому номеру ветви.
Программа на Паскаль, также как и в других языках программирования реализует алгоритм решения задачи. Она обьединяет последовательность действий, выполняемых над определенными типами данными с помощью операций, определяемых возможностями языка. Язык Паскаль является универсальным языком, т.е. на нем можно писать вычислительные, графические и системные программы, программы по обработке больших блоков данных(типа СУБД).
При использовании технологии нисходящего структурного программирования появляется возможность включать в разрабатываемые программные комплексы, созданные ранее, программные модули (процедуры), выполняющие идентичные или практически идентичные функции. Использование готовых программных модулей значительно повышает надежность программного комплекса, упрощает процесс его разработки, сокращает время разработки и снижает стоимость самой разработки.
Оттестированные программные модули, которые могут использоваться в других программах без каких-либо изменений или с небольшими изменениями, мы будем называть стандартными программными модулями или стандартными процедурами, а алгоритмы, которые они реализуют, — стандартными алгоритмами. Система программирования Турбо Паскаль, так же, как и другие системы программирования, имеет профессиональную библиотеку стандартных программ, однако на этапе первоначального обучения её использование вызывает определенные трудности.
Следует отметить, что каждый программист, как правило, со временем сам создает значительное количество процедур, с помощью которых решаются общие для многих программ задачи (элементы оформления программ, организация интерфейса пользователь - компьютер, средства контроля и защиты от ошибок пользователя и др). Эти процедуры, являясь стандартными процедурами, могут составить постоянно пополняющуюся личную библиотеку программиста.
Способ включения стандартной процедуры зависит от того, требует ли стандартная процедура каких-либо изменений для использования во вновь разрабатываемом программном комплексе или может быть включена в него и в любые другие без изменений.
Рассмотрим три способа включения стандартной процедуры из библиотеки в программный комплекс. Первый способ позволяет включать стандартные процедуры после внесения в них требуемых изменений. Второй и третий способы применимы для процедур, не требующих изменений.
Процедура Middle выводит на экран строку текста, центрируя ее. Длина выводимой строки не должна превышать 80 символов. Для удобства работы с процедурой в ней предусмотрен контроль длины выводимой строки. Если длина строки превышает 80 символов, то выдается рекоменia сколько необходимо уменьшить число символов в строке, и выполнение программы прерывается (аварийное завершение программы).
Данная процедура обеспечивает вывод строки. Символы выводятся на черный фон белым цветом разной насыщенности, симметрично относительно левой и правой границам экрана. Вывод строки сопровождается звуковыми сигналами.
{-------------------------- Colorstr ----------------------------
Процедура вывода строки сообщения с центрированием. Строка выводится
трижды на одно и то же место. При этом ее цвет измеяется и вывод
строки сопровождается звуковыми сигналами. В данной процедуре вывод
осуществляется на экран с черным фоном. Символы выводятся белым
цветом разной насыщенности. Для установки других цвето в фона и
символов необходимо внести изменения в исходный текст процедуры
------------------------- colorstr.inc ---------------------------}
PROCEDURE ColorStr (Stroka : string; Y: integer);
{ текст сообщения не должен превышать 80 символов }
( Y - строка вывода сообщения }
{$I waitdos.inc }
VAR
X : integer; { позиции начала вывода строки }
BEGIN
TextBackGround(O);
ClrScr;
TextColor (15) ; { центрируем строку }
if Length (Stroka) > 80 then begin
TextColor(15);
GotoXY (18,8);
Writeln ('Текст сообщения в строке, начинающейся с:');
GotoXY (21,10);
Write ('"',Copy (Stroka,1,30), '..."');
GotoXY (29,12) ;
Write ('превысил 80 символов !');
GotoXY (28,14);
Write ('Сократите текст.');
WaitDos (7) ;
Halt;
end;
X := (80 - Length (Stroka)) div 2;
TextColor (13);
GotoXY(X,Y);
Writeln (Stroka);
WaitDos (2) ;
TextColor (14);
GotoXY (X,Y);
Write (Stroka);
Sound (3560);
WaitDos (2);
NoSound;
TextColor(15);
GotoXY (X,Y);
Write (Stroka);
Sound (2356);
WaitDos (1);
NoSound;
END;
|
|
:tanucik2004@ya.ru |
Copyright © TP7.INFO, 2007-2011
|
|
|
: 308-364-613 |
||
|
: +7 953 580 83 78 |