
- •Заголовок программы
- •Раздел объявлений и соглашений
- •Раздел текстов процедур и функций
- •Тело программы
- •Структура программы, или главный порядок
- •4. Зарезервированные слова, идентификатор, константа, переменная, типизированная константа и инициализированная переменная. Зарезервированные слова Turbo Pascal 7.0
- •Идентификаторы или имена
- •4.2. Константы в Turbo Pascal 7
- •4.2.1. Целые константы
- •4.2.2. Вещественные константы
- •4.2.3. Строковые и символьные константы
- •4.2.4. Константные выражения
- •4.2.5. Типизированные константы
- •5. Арифметические и логические выражения, операнд, операция, оператор, комментарии.
- •1. Арифметические операции
- •2. Логические операции
- •8. Порядковые, перечисляемые, интервальные и структурированные типы.
- •9. Строки, массивы, множества, записи, указатели, файлы.
- •10. Иерархические структуры типов, данных и подпрограмм.
- •11. Описание, объявление и способы инициализации данных. Свойства типов и данных
- •12. Виды и приоритет элементарных операций (унарные, бинарные, арифметические, логические, отношения). Оператор присваивания и автоматическое преобразование типов операндов. Логические операции
- •13. Условные и безусловные операторы. Операторы перехода и выбора.
- •Оператор безусловного перехода
- •Оператор выбора
- •Цикл с предусловием
- •Цикл с постусловием
- •15. Директивы компилятора (препроцессора).
- •16. Процедуры и функции, их объявление, описание, вызов. Процедурные типы.
- •17. Формальные и фактические параметры. Особенности передачи параметров.
- •18. Стандартные и собственные модули, их организация.
- •19. Встроенные процедуры ввода-вывода информации. Спецификация формата вывода.
- •20. Подпрограммы для работы со строками.
- •22. Открытые и динамические массивы.
- •23. Динамическое определение и преобразование типа переменной.
- •24. Встроенные процедуры и функции для работы с динамическими элементами.
- •25. Указатели, односторонние и двухсторонние списки. Приемы работы с указателями.
- •Списки с двойной связью
- •28. Объектно-ориентированное программирование. Основная идея, принципы, понятия.
- •29. Классы, объекты, методы и свойства.
- •30. Инкапсуляция, наследование, полиморфизм. Конструкторы и деструкторы.
- •31. Интерфейс и система управления реализацией программного проекта.
- •36. Библиотеки, их организация и подключение.
- •37. Тестирование и оценка эффективности программ.
4.2.1. Целые константы
В изображении целых констант присутствуют лишь знак и цифры (знак + можно не указывать). Предполагается десятичная система счисления, однако можно использовать и шестнадцатеричную. В этом случае перед константой следует поставить знак $. Диапазон целых десятичных чисел - от-2147483648 до 2147483647, а шестнадцатеричных - от $00000000 до $FFFFFFFF. В Turbo Pascal заданы два предопределенных целых числа: MaxInt = 32767 MaxLonglnt = 2147483647
4.2.2. Вещественные константы
Вещественные константы в своем изображении содержат десятичную точку или/и показатель степени (символ Е или е), например:
var X = -0.5; Y = 1.0; Z = -1Е-5; W = 7.5е+15;
4.2.3. Строковые и символьные константы
Строка символов - это последовательность любого, в том числе и равного нулю, количества символов из набора ASCII, расположенных на одной строке и заключенных в апострофы. Ограничением здесь может быть максимальный размер строки, воспринимаемый компилятором, - не более 126 символов.
Строка, состоящая из одного символа, называется символьной константой.
Если между апострофами нет ни одного символа, то такая строка называется нулевой строкой.
При необходимости поместить в строку символ "апостроф", его следует записать дважды, например
'Язык ' 'Turbo Pascal'''
Для включения в строку символов, не имеющих физического изображения, используется их ASCII-код с символом # перед ним. Для изображения управляющих символов (коды от 0 до 31) можно использовать символ ^ и соответствующую букву, код которой равен коду управляющего символа плюс 64.
Пример. Строковые константы.
const Symbols = 'TURBO'; Apostroph = ''''; TwoLines = 'Line1'#13#10'Line2'; Return = ^M^J; {Коды управляющих символов 13 и 10}
4.2.4. Константные выражения
Константные выражения - это такие выражения, которые могут быть вычислены на стадии компиляции без запуска программы. Они являются частным случаем выражений и могут состоять из констант, знаков операций, круглых скобок и некоторых стандартных функций.
Пример. Константные выражения.
$А00 |
{выражение, состоящее из константы} |
'А' |
{выражение, состоящее из символьной константы} |
Pi/4 |
{выражение с использованием функции и знака операции} |
'TURBO' + '-' + 'PASCAL' |
{конкатенация (объединение) строк} |
Использование константного выражения приведено также в п. 16.3.21.
В константных выражениях можно использовать следующие функции: Abs, Chr, Hi, High, Length, Lo, Low, Odd, Ord, Pi, Pred, Ptr, Round, SizeOf, Succ, Swap, Trunc.
4.2.5. Типизированные константы
Типизированные константы фактически представляют собой инициализированные переменные и могут использоваться наравне с обычными переменными, в том числе и в левой части операции присваивания.
Для каждой такой константы задается ее имя, тип и начальное значение. Тип от имени отделяется двоеточием, начальное значение от типа - знаком равенства:
const <имя константы>: <тип константы> = <значение константы>;
Пример.
const Maximum: Integer = 9999; Rea: Real = -0.5; Bell: Char = #7;
Правила задания значений типизированным константам структурированных типов рассмотрены при описании соответствующих типов (пп. 6.1, 6.4, 6.5).
Следует иметь в виду, что типизированные константы (в том числе и константы процедур и функций) инициализируются только раз - в начале работы программы.
Независимо от места объявления типизированных констант в программе все они размещаются в сегменте данных программы.
Понятие переменной. Типы. |
||||||||||||||||
Данные, как вы знаете, хранятся в памяти компьютера, но для указания на конкретную информацию очень неудобно все время записывать физические адреса ячеек. Эта проблема в языках программирования высокого уровня, в частности в Паскале, решена введением понятия переменной. Переменная в Паскале - именованный участок памяти для хранения данных определенного типа. Значение переменной (информация в соответствующих ячейках памяти) в ходе выполнения программы может быть изменено. Константами же, как вы уже знаете, называются величины, значение которых в ходе выполнения программы изменено быть не может. Конкретные переменные и константы представляют собой объекты уникальные и отличаются друг от друга именем. В качестве данных в программах на языке Паскаль могут выступать числа, символы, целые строки символов. Заметьте, что с этими различными видами информации выполняются совершенно разные действия. Например, с числовыми величинами производятся арифметические операции, чего невозможно сделать с символьными. Кроме того, разные виды данных требуют различного объема памяти для хранения. В соответствии с этими соображениями в языке Паскаль введено понятие "Тип" (TYPE). Тип переменной указывает на то, какие данные могут быть сохранены в этом участке памяти, и в каких действиях эта переменная может участвовать. Существуют зарезервированные (базовые) типы в языке Паскаль, но, как далее вы убедитесь, есть также возможность создавать свои собственные, определяемые программистом типы переменных. К базовым типам относятся:
Физически типы данных отличаются друг от друга количеством ячеек памяти (байтов), отводимых для хранения соответствующей переменной. Логическое же отличие проявляется в интерпретации хранящейся информации. Например, переменные типа Char и типа Byte занимают в памяти по одному байту. Однако в первом случае содержимое ячейки памяти интерпретируется как целое беззнаковое число, а во втором - как код (ASC) символа. В отличие от констант, неименованных переменных не существует. Все используемые в программе переменные должны быть описаны в соответствующем разделе описания. Раздел описания переменных начинается служебным словом Var, после которого следуют записи следующего вида: <Список имен переменных>:<Название типа>; Список может состоять из нескольких имен (при этом они разделяются запятыми), а также и из одного имени. Тип, указываемый после двоеточия, определяет, какие данные теперь могут храниться в описанных таким образом переменных. Для каждого используемого в программе типа переменных в разделе их описания должна быть, как минимум, одна собственная строка.
Пример: Var A,B,H_22,Angle : Real; Name3 : String; Flag : Boolean; I,J,K,Count : Word; |