- •Программирование на языке Паскаль в среде Turbo Pascal версии 6 и 7
- •Глава 7. Составные типы данных 29
- •Глава 8. Подпрограммы и функции 46
- •Глава 9. Файлы 50
- •Глава 10. Динамические переменные (списки) 58
- •Тип и функциональные возможности языка
- •Структура программы на Паскале
- •Алфавит языка
- •Правила написания имен
- •Структура блока описаний
- •Глава 2. Простые типы данных в языке Паскаль Понятие и классификация типов данных
- •Целочисленные типы
- •Вещественные типы
- •Логический тип
- •Символьный тип
- •Интервальный тип пользователя
- •Перечисляемый тип пользователя
- •Глава 3. Встроенные функции Понятие и классификация типов функций
- •Математические функции
- •Функции преобразования типов
- •Глава 4. Выражения Понятие и классификация типов выражений
- •Арифметические операции
- •Логические операции
- •Отношения
- •Битовые операции
- •Глава 5. Выполняемые операторы языка (для программ линейной структуры) Понятие и классификация
- •Классификация инструкций Паскаля
- •Оператор присваивания
- •Простейшие операторы ввода с клавиатуры
- •Простейшие операторы вывода на экран дисплея
- •Глава 6. Выполняемые управляющие операторы языка Простые управляющие операторы
- •Оператор безусловного перехода.
- •Оператор продолжения цикла.
- •Операторы ветвлений
- •Оператор условного перехода.
- •Неполный условный оператор.
- •Полный условный оператор.
- •Операторы циклов
- •Оператор арифметического цикла
- •Операторы итеративных циклов
- •Организация цикла с помощью условного перехода
- •Оператор итеративного цикла с предусловием
- •Оператор итеративного цикла с постусловием
- •Глава 7. Составные типы данных Классификация составных типов
- •Массивы Основные определения
- •Вывод массива
- •Примеры программ работы с массивами
- •Сортировки массива
- •Алгоритмы основных методов сортировок
- •Строки Строковые переменные
- •Стандартные (встроенные) процедуры работы со строками
- •Стандартные (встроенные) функции работы со строками
- •Структуры
- •Глава 8. Подпрограммы и функции Понятие подпрограмм в языке Паскаль.
- •Процедуры.
- •Описание и вызов функций
- •Параметры процедур и функций
- •Глава 9. Файлы Классификация внешних данных
- •Стандартные процедуры работы с файлами
- •Процедуры
- •Функции
- •Особенности работы с текстовыми файлами
- •Пример работы с текстовыми файлами.
- •Двоичные файлы (в машинных кодах) Типизированные файлы
- •Процедуры при работе с типизированными файлами
- •Функции при работе с типизированными файлами
- •Пример работы с типизированными файлами.
- •Файлы без типов
- •Процедуры, используемые при работе с нетипизированными файлами
- •Функции, используемые при работе с нетипизированными файлами.
- •Глава 10. Динамические переменные (списки) Понятие динамических переменных
- •Списочные данные
- •Односвязные списки
- •Двусвязные списки
- •Нульсвязные списки
- •Глава 11.Стандартный модуль работы с текстовым экраном Crt
- •2) Координаты экрана
- •3) Управление графическим режимом
- •4) Управление экраном и окном
- •5) Управление цветом
- •6) Вывод точек
- •7) Вывод линий
- •8) Вывод и закраска контуров
- •9) Окружности, эллипсы, дуги
- •10) Вывод текста
- •11) Последовательность работ при использовании графического режима
- •11) Пример программы приложения
Структура программы на Паскале
Программа на Turbo Pascal состоит из отдельных предложений трех типов: операторов, комментариев и директив компилятору. Они могут начинаться в любом месте строки и могут занимать как несколько строк каждое, так и записываться по несколько штук в одной строке. Однако традиционно, каждое предложение программы стараются записывать в отдельной строке.
В общем случае, Паскаль-программа делится на заголовок, блок описаний и блок выполняемых операторов, из которых обязательным является только последний блок (тело программы).
Turbo Pascal разрешает опускать заголовок программы, но если он используется, то представляет собой обычно следующий вид:
program <имя программы>;
Здесь и далее понятие, заключенное в угловые скобки должно быть заменено конкретным значением написанного понятия, например:
program Primer_1;
За заголовком следует блок описаний (объявлений переменных, констант, функций и т.д.), который теоретически (для простейшей программы) может отсутствовать. Его структура описана ниже.
Раздел выполняемых операторов должен начинаться открывающей скобкой begin и заканчиваться закрывающей скобкой end. (с точкой на конце!).
Пример простейшей программы на Паскале, вычисляющей площадь круга:
program Circle; Заголовок программы
const Начало блока описаний
PI=3.1416; Объявление констант
var Объявление переменных
S,R : real; Конец блока описаний
begin Начало выполняемых операторов
writeln('Задайте радиус круга'); Вывод сообщения на экран-запрос данных
read(R); Ввод числа с клавиатуры
s:=PI*sqr(R); Вычисление площади круга
writeln('Площадь круга равна ',S); Вывод результата на экран
end. Конец программы
Лекция 3
Алфавит языка
Алфавитом называется множество символов, с помощью которых строятся все конструкции (объекты) языка. В версии Turbo Pascal 6.0 используются символы Американского Стандартного Кода Обмена Информацией (английская аббревиатура - ASCII). Все символы можно разделить на символы, используемые при написании 1) констант, имен, зарезервированных и ключевых слов; 2) разделителей между константами, именами и ключевыми словами и 3) специальные символы (знаки пунктуации, знаки операций).
В первую группу входят 26 букв латинского алфавита (с учетом того, что Паскаль не различает строчные и прописные буквы), 10 цифр и символ подчеркивания.
Во вторую группу входят: пробел, перевод строки, возврат каретки, табуляция (и вообще любой управляющий символ, с кодом начиная от 0 до 31) и комментарий. Отметим, что там, где можно поставить один разделитель, можно поставить любое количество любых разделителей. Комментарий может находиться внутри оператора, может занимать несколько строк.
В третью группу входят символы:
+ - * / - знаки арифметических операций;
< > = <= >= <> - знаки операций отношений:
- границы комментария;
[] - для индексов массивов, строк, элементов множеств;
() - выделение части выражения, задание списка параметров;
:= - знак присваивания значения;
, - разделение элементов списка;
. - отделение дробной части числа, имен полей в структурах;
; - разделение операторов;
: - отделение метки от оператора, имен переменных от типа;
' - выделение символа или текстовой константы;
.. - разделение границ диапазона;
$ - признак шестнадцатеричной константы, директивы компилятору;
# - обозначение символа, заданного числовым кодом;
@ - обозначение адреса переменной;
^ - обозначение значения величины по ее адресу (указателю).
Другие символы (например русские буквы, знаки %, ?, !, ", &, символы псевдографики) можно использовать только в комментариях и внутри текстовых констант.