- •Программирование в системе Pascal abc
- •Введение
- •1. Система программирования pascal abc
- •1.1. Структура меню среды
- •1.2. Команды редактора Pascal abc
- •Команды удаления и вставки
- •1.3. Правила оформления программ
- •1.4. Компиляция и исправление синтаксических ошибок
- •1.5. Этапы подготовки и решения задач на компьютере
- •1.6. Словарь основных терминов
- •2. Начальные сведения о языке pascal abc
- •2.1. Алфавит языка
- •2.2. Константы
- •2.3. Идентификаторы и типы данных
- •2.4. Переменные и именованные константы
- •2.5. Структура простой программы и комментарий
- •3. Оператор присваивания и числовые данные
- •3.1. Арифметические выражения
- •Приоритеты операций в выражении
- •3.2. Оператор присваивания
- •3.3. Процедуры ввода-вывода
- •3.4. Стандартные функции Pascal abc
- •3.5. Целые типы в Pascal abc
- •3.6. Вещественные типы
- •Переменные комплексного типа
- •3.7. Примеры и задания к самостоятельному выполнению
- •4. Программирование разветвленных алгоритмов
- •4.1. Логические выражения
- •4.2. Условный оператор if
- •4.3. Составной и пустой операторы
- •4.4. Оператор безусловного перехода
- •4.5. Пример и задания с оператором if
- •4.6. Оператор выбора варианта case
- •4.7. Примеры и задания с оператором case
- •5. Программирование алгоритмов циклической структуры
- •5.1. Оператор счётного цикла
- •5.2. Примеры и задания для оператора цикла со счётчиком
- •Задания к самостоятельному выполнению
- •5.3. Оператор цикла с предусловием
- •5.4. Пример и задания для оператора цикла с предусловием
- •5.5. Оператор цикла с постусловием
- •5.6. Процедуры прерываний циклов
- •5.7. Примеры и задания для циклов с постусловием
- •Задания для самостоятельного выполнения
- •6. Структурированные типы данных
- •6.1. Массивы данных
- •Типизированные константы-массивы
- •6.2. Пример и задания для одномерных массивов
- •Задания для самостоятельного выполнения Задание 1
- •Задание 2
- •6.3. Ограниченный тип (диапазон)
- •6.4. Пример и задания для двумерных массивов
- •Задания для самостоятельного выполнения Задание 1
- •Задание 2
- •Задание 3
- •7. Структурное программирование
- •7.1. Структура сложной программы
- •7.2. Подпрограммы. Процедуры и функции
- •7.3. Структура подпрограммы-функции
- •7.4. Примеры и задания с подпрограммой-функцией
- •Задания для самостоятельного выполнения Задание 1
- •Задание 2
- •7.5. Структура подпрограммы-процедуры
- •7.6. Передача в подпрограмму массивов и строк
- •7.7. Рекурсия в программе
- •7.8. Вложенные подпрограммы
- •7.9. Процедуры exit и halt
- •7.10. Пример и задания с подпрограммой-процедурой
- •Задания для самостоятельного выполнения Задание 1
- •Задание 2
- •8. Обработка символьных данных
- •8.1. Символьный тип
- •8.2. Задания для символьных данных
- •9. Обработка строк текста
- •9.1. Строковый тип
- •9.2. Встроенные функции и процедуры для обработки строк
- •9.3. Пример и задания для обработки строк
- •Задания для самостоятельного выполнения
- •10. Файлы
- •10.1. Процедура связывания файлов
- •10.2. Процедуры и функции для работы с файлами
- •10.3. Типизированные файлы
- •10.4. Текстовые файлы
- •10.5. Процедуры ввода
- •10.6. Процедуры вывода
- •10.7. Примеры и задания для работы с файлами
- •Задания для самостоятельного выполнения Задание 1
- •Задание 2
- •11. Комбинированный тип – записи
- •11.1. Структура данных типа записи
- •11.2. Обработка полей записей
- •11.3. Задания с обработкой записей Задание 1
- •Задание 2
- •12. Процедурные типы
- •Библиографический список
- •Обозначения графические в схемах алгоритмов (гост 19.701-90)
- •Содержание
2.2. Константы
В программе обрабатываются некоторые данные, которые представляют собой постоянные (константы) или переменные величины.
В качестве констант в Pascal ABC используются целые, вещественные, шестнадцатеричные числа, логические константы, символы, строки символов, конструкторы множеств, признак неопределенного указателя.
Целые константы записываются в естественной форме со знаком или без него, т.е. +1, 120, -35, 0 и т.п.
Вещественные числа записываются в форме основной вещественной константы (естественная запись вещественного числа с десятичной точкой) или в экспоненциальной форме, когда число состоит из основной вещественной константы (или целой константы) и экспоненциальной части. Экспоненциальная часть начинается с символа Е(е), за которым следует десятичный порядок (целое число со знаком или без него). Например: 3.4; 5.56E4; -0.5Е-3; 3Е-1. Перед точкой и за ней должна следовать хотя бы одна цифра.
Шестнадцатеричное число состоит из шестнадцатеричных цифр (0, 1, 2, ..., 9, А, В, С, D, E, F), перед которыми ставится признак шестнадцатеричного числа $. Например, $A5 (соответствует числу 165 в десятичной системе счисления).
Логическая константа может принимать два значения: FALSE (ложь) и TRUE (истина).
Символьные константы любой символ персонального компьютера, заключенный в апострофы. Для записи символа апострофа он удваивается (''''). Допускается записывать символы путем указания кода, которому предшествует знак #. Например, эквивалентными являются пары записей: #97 > 'а'; #67 > 'A'; #11 код перевода строки.
Строковая константа это любая последовательность символов языка, заключенная в апострофы. Например, строковой константой является: 'Это строка'.
Если две строковые константы отличаются типом букв (прописные или строчные), то такие константы считаются различными. В строке символов могут указываться коды символов, которым предшествует #. Например: #7'Ошибка' #7.
Конструктор множества список элементов множества, заключенный в квадратные скобки ( [1, 2, 3, ... , 7, 8] , [ ], [TRUE] ).
2.3. Идентификаторы и типы данных
Идентификаторы это имена констант и переменных, а также типов, объектов, процедур, функций, модулей, программ и полей в записях, которые объявляются в начале программы и затем в ней используются.
Идентификатор описывается последовательностью латинских букв, цифр и знака подчеркивания, начинающейся с буквы. Он может иметь любую длину, но различимыми являются первые шестьдесят три символа (пробелы и специальные символы в идентификаторы не входят).
Например, идентификаторами будут: x, z0, ALFA, x353, SENT_3_2010.
В качестве идентификаторов в программе нельзя использовать зарезервированные слова и имена, которыми названы стандартные константы, файлы, функции, процедуры, типы Pascal ABC.
Любые данные в программе (константы, переменные, значения функций или выражений) характеризуются своими типами. Тип определяет множество значений, которые может иметь данное, операции, применимые к нему, а также формат внутреннего представления. Любые данные до их использования должны быть предварительно объявлены с указанием их типа.
Типы в Pascal ABC делятся на простые, структурированные, процедурные, указатели и строки. В свою очередь простые типы включают порядковые и вещественные данные, а структурированные делятся на массивы, записи, множества и файлы.
Порядковые типы как стандартные, так и нестандартные, введенные разработчиком программы, отличаются тем, что каждый из них содержит конечное число возможных значений. Эти значения можно определенным образом упорядочить или перенумеровать. Для таких типов для каждой пары элементов можно всегда определить, какой из них предшествует другому. В Pascal ABC являются порядковыми типы integer, byte, char, перечислимый и диапазонный. Только значения этих типов могут быть индексами массивов, а также взяты в качестве выражения-переключателя в операторе выбора Case.
К вещественным типам указанные функции применить нельзя, количество возможных значений вещественных типов очень велико, так что сопоставить с каждым из них число (его номер) невозможно.
Для порядковых типов определены три специальные функции:
ORD(X) возвращает порядковый номер значения выражения X;
PRED(X) возвращает значение, предшествующее X в его типе, т.е.
ORD( PRED(X) ) = ORD(X) - 1;
SUCC(X) определяет следующее по порядку за X значение:
ORD( SUCC(X) ) = ORD(X) + 1.