- •Алгоритмизация и основы программирования
- •1. Технология подготовки и решения задач на компьютере
- •Понятие об алгоритмических языках
- •2. Этапы решения задач на компьютере
- •Этапы процесса тестирования
- •Характерные ошибки программирования.
- •3. Основы языка программирования Паскаль
- •3.1. Алфавит языка программирования
- •Правила написания идентификаторов:
- •Константы
- •3.2. Выражения, операции
- •3.3. Операторы
- •3.3.1. Оператор присваивания
- •3.3.2. Операторы перехода
- •3.4. Использование комментариев для пояснений
- •3.5. Общая структура программ в Паскале
- •1. Раздел объявлений и соглашений
- •2. Раздел текстов процедур и функций
- •3. Раздел основного блока программы
- •3.6. Основные операторы модуля crt в turbo pascal
- •3.7. Типы данных
- •3.7.1. Целочисленный тип
- •3.7.2. Вещественные типы
- •3.7.3. Символьный тип
- •3.7.4. Логический тип (boolean)
- •Простые логические выражения
- •Составное логическое выражение
- •Перечисляемый тип
- •Интервальный тип
- •3.8. Ввод-вывод данных
- •Вывод данных
- •Способы представления вещественных чисел
- •Ввод данных
- •3.9. Математические функции и процедуры
- •Взаимные преобразования чисел
- •4. Конструкции языка программирования Паскаль
- •4.1. Организация ветвления
- •4.1.1. Условные операторы. Оператор if
- •4.1.2. Конструкция множественного выбора Case … Of
- •4.2. Операторы цикла
- •4.2.1. Оператор цикла For
- •4.2.2. Оператор цикла Repeat..Until
- •4.2.3. Оператор цикла While..Do
- •5. Структурированные типы данных
- •Одномерные массивы
- •Доступ к элементам массива
- •Заполнение массива
- •6. Подпрограммы пользователя. Назначение Преимущества модульности
- •Подпрограмма
- •Список используемой и рекомендуемой литературы
2. Раздел текстов процедур и функций
PROCEDURE (FUNCTION) |
Заголовок процедуры (функции) |
CONST |
Подраздел объявления локальных констант |
TYPE |
Подраздел объявления локальных типов |
VAR |
Подраздел объявления локальных переменных |
BEGIN |
|
… |
Основной блок процедуры (функции) |
END; |
|
3. Раздел основного блока программы
BEGIN |
|
|
Основной блок программы |
END. |
|
В заголовке обычно указывают имя программы. Заголовок не обязателен.
Оператор USES позволяет подключить к тексту программы модули из библиотек. Каждый модуль (UNIT) представляет собой программу, содержащую описание типов, переменных, констант, процедур и функций, необходимых пользователю.
Некоторые стандартные модули:
System (подключается автоматически) — библиотека поддержки Паскаля (файловый ввод-вывод, обработка строк, операции с плавающей запятой);
Crt (управление экранным режимом, чтение расширенных кодов клавиатуры, использование цветов, окон и звука); Crt обеспечивает работу клавиатуры и дисплея.
Graph (работа с графикой).
Оператор USES может быть использован в программе только один раз и должен предварять все прочие операторы и разделы.
Пример:
USES Crt, Graph;
Разделы CONST, TYPE, VAR могут встречаться в программе несколько раз или вообще не встречаться в ней.
Раздел описания типов TYPE позволяет программисту определить новый тип в программе. В данном разделе могут быть использованы ранее определенные в разделе CONST константы.
Основной блок программы состоит из последовательности операторов. Тело основного блока программы ограничено операторами BEGIN и END. (с точкой в конце).
Требование: метки, константы, типы и переменные могут использоваться в программе только в том случае, если они были определены выше по тексту.
3.6. Основные операторы модуля crt в turbo pascal
Чтобы использовать модуль CRT, его имя нужно указать в операторе USES:
USES Crt;
Процедура Clrscr — очистка текущего окна с заполнением его цветом фона и помещение курсора в верхний левый угол окна. По умолчанию экран закрашивается в черный цвет.
Процедура ClrEOL — удаляет все символы, начиная от позиции курсора до конца строки, без перемещения курсора.
Процедура DelLine — удаляет строку, в которой находится курсор, и перемещает все расположенные ниже строки на одну строку вверх.
Процедура InsLin — вставляет пустую строку на месте расположения курсора. Все строки, ниже добавленной перемещаются на одну строку вниз; нижняя строка исчезает с экрана.
Функция KeyPressed:Boolean (модуль CRT) возвращает значение True, если в буфере клавиатуры содержится хотя бы один символ, т.е. была нажата клавиша, и False, если буфер пуст, т.е. нажатия клавиши не произошло.
Функция ReadKey:Char считывает из буфера клавиатуры и возвращает в программу последний введенный символ. Без использования функции ReadKey повторное использование функции KeyPressed будет неэффективным. Readkey часто используют для остановки программы с целью просмотра результата ее работы на экране. После нажатия любой клавиши продолжается выполнение программы.
Процедура Delay(MS: Word); приостанавливает выполнение программы на указанное в миллисекундах время.
Процедура Sound(Hz: Word); включает внутренний динамик. Параметр Hz определяет частоту генерируемого звука в герцах. Динамик будет включен до обращения к NoSound.
Процедура Nosound; выключает внутренний динамик компьютера.
Процедура GotoXY(X,Y: Word); устанавливает курсор в позицию экрана с координатами (X,Y). При работе с экраном при использовании модуля Crt весь экран разбивается на отдельные строки, а каждая строка — на отдельные позиции. Каждая из позиций имеет свои координаты. Вспомните координатную плоскость, известную вам из курса математики. Отличие экранной координатной плоскости от привычной для вас состоит в том, что координаты на экране отсчитываются от левого верхнего угла экрана.
Левый верхний угол экрана соответствует позиции (1,1). По умолчанию на экране помещается 80 позиций по горизонтали (столбцов) и 25 позиций по вертикали (строк). То есть, экран в текстовом режиме имеет 80 х 25 позиций.
Пример:
Gotoxy(8, 10) — перемещение курсора в 8-й столбец и 10-ю строку экрана.
Процедура Textcolor(n) — задание цвета выводимых на экран символов, п принимает значение от 0 до 15. Например, при п=4 символы будут красного цвета. Для получения мерцающего символа используется код 128.