Алфавит и словарь языка паскаль
Для написания программ можно использовать:
1. Прописные строчные буквы латинского алфавита
2. Цифры от 0 до 9
3. Шестнадцатеричные цифры (строятся из десятичных цифр от 0 до 9 и латинских букв от A(a) до F(f))
4. Специальные символы
+ | плюс | # | номер | * | умножить | пробел | |
- | минус | = | равно | / | дробная черта | $ | знак денежной единицы |
_ | подчеркивание | ; | точка с запятой | ‘’ | апострофы | ^ | тильда |
() | круглые скобки | , | запятая | < | меньше | @ | коммерческое а |
[] | квадратные скобки | . | точка | > | больше | ||
{} | фигурные скобки | : | двоеточие |
5. Комбинации специальных символов
:= | присваивание | >= | больше или равно |
<> | не равно | .. | диапазон значений |
<= | меньше или равно |
В программе эти пары символов разделять пробелами нельзя, если они используются как знаки операций.
Слова, используемые в Паскале, можно разделить на три группы: зарезервированные слова, стандартные идентификаторы и идентификаторы пользователя.
Идентификатор – имя, используемое для обозначения программ, а в программе переменных и постоянных величин, различных процедур, функций, объектов (identification – установление соответствия объекта некоторому набору символов).
Зарезервированные слова являются составной частью языка, имеют фиксированное начертание и определенный смысл. Они не могут изменяться программистом и использоваться в качестве имен, вводимых пользователем для обозначения величин.
Некоторые зарезервированные слова
Absolute | Абсолютный | Not | Логическое НЕ |
And | Логическое И | Or | Логическое ИЛИ |
Array | Массив | Of | Из |
Begin | Начало блока | Procedure | Процедура |
Case | Вариант | Program | Программа |
Const | Константа | Record | Запись |
Div | Деление нацело | Repeat | Повторять |
Do | Выполнять | String | Строка |
Downto | Уменьшить до | Then | То |
Else | Иначе | To | Увеличивая |
End | Конец блока | Type | Тип |
For | Для | Until | До |
Function | Функция | Uses | Использовать |
If | Если | Var | Переменная |
Label | Метка | While | Пока |
Mod | Остаток от деления | xor | Исключающее ИЛИ |
Стандартные идентификаторы используются для обозначения заранее определенных разработчиками языка типов данных, констант, процедур и функций. Пример: integer, cos, sin, sqrt, read, write и т.д.
Идентификаторы пользователя применяются для обозначения меток, констант, переменных, процедур и функций, определенных самим программистом. При этом идентификаторы в программе должны быть уникальными.
Правила написания идентификаторов
1. Можно использовать как прописные, так и строчные буквы латинского алфавита.
2. Идентификатор может начинаться только с буквы или знака подчеркивания.
3. Идентификатор может состоять из букв, цифр и знака подчеркивания (пробелы, точки и другие специальные символы запрещены).
4. Правильно выбранные идентификаторы значительно облегчают чтение и понимание программы.
5. Русские буквы в программе должны заключаться в апострофы!
Константы и переменные
Любая программа имеет смысл, если она обрабатывает какие-либо данные. В Паскале данные разделяются на константы и переменные. В программе константы и переменные определяются идентификаторами (именами) пользователя. Каждая переменная и константа принадлежат к определенному типу данных.
Константы – данные, которые не меняют своего значения в процессе выполнения программы. Тип константы автоматически распознается компилятором. Все константы должны быть описаны в специальном разделе, который начинается зарезервированным словом const (constant – константа).
В Паскаль применяется 5 видов констант простых типов:
- Целочисленные константы. В качестве значений может использоваться любое целочисленное данное в десятичном или шестнадцатеричном формате (year=2003)
- Вещественные константы определяются числами, записанными в десятичном формате данных (time=0.2e+4, yyy=304.0)
- Символьные константы могут быть определены только посредством символов таблицы ASCII. При этом сам символ заключается в апострофы (var1='A')
- Строковые константы определяются произвольной последовательностью символов, заключенных в апострофы (stroke='IBM')
- Типизированные константы (переменные с начальным значением). Каждой типизированной константе ставится в соответствие имя, тип, начальное значение (year1:integer =1995)
Формат:
Const
Имя = значение константы;
Пример:
Сonst
MyName = ‘Ваня Иванов’;
J=5;
Max=1000;
Min=2;
Center=(max-min)/2;
Переменные – данные, которые могут менять свои значения в процессе выполнения программы. Тип переменных должен быть описан перед тем, как с переменными будут выполняться какие-либо действия. Переменные описываются в специальном разделе, который начинается зарезервированным словом var (variable – переменная). Однотипные переменные могут перечисляться через запятую перед указанием их типа.
Формат:
Var
Имя : тип переменной;
Пример:
Var
A, d, c, r: integer;
Summa: real;
Кроме констант и переменных существуют так называемые типизированные константы. Данные этого типа описываются в разделе const, и для них указывается тип, как у переменных.
Формат:
Const
Имя : тип = значение;
Пример:
Const
K: word = $B800;
Ocenka: byte = 4;
Predmet: string=’информатика’;
Все переменные делятся на глобальные и локальные. Глобальными являются переменные, объявленные вне процедур и функций, а локальными - объявленные внутри процедур и функций.
Паскаль накладывает ряд ограничений на использование переменных:
- Среди глобальных переменных не может быть двух с одинаковыми идентификаторами;
- Среди локальных переменных в пределах одной процедуры или функции не может быть двух с одинаковыми идентификаторами;
- В тексте программы любой глобальный идентификатор может дублировать любой локальный идентификатор, т.к. даже при одинаковых именах они хранятся в разных участках памяти.
Типы данных
Любые данные Паскаля характеризуются своими типами. Тип определяет:
· формат представления данных в памяти компьютера
· множество допустимых значений, принимаемое переменной или константой, принадлежащей к выбранному типу
· множество допустимых операций применимых к этому типу
Тип переменной определяется при ее объявлении. Одна из базовых концепций Паскаля заключается в жесткой проверке соответствия типов в операциях присваивания.
Типы данных в языке ТП делятся на 2 основных класса:
Простые типы
· стандартные (целочисленный тип, логический (булевый) тип, символьный тип, вещественный тип, перечислимый тип)
· пользовательские
2. Структурированные типы (строки, массивы, множества, запись, файл)
Целочисленный тип
Данные целочисленных типов могут быть представлены как в десятичной, так и в шестнадцатеричной системе. Если число представлено в шестнадцатеричной системе, перед ним без пробела записывается знак $. Диапазон изменений шестнадцатеричных чисел от $0000 до $FFFF.
Byte | 0..255 | 1 байт |
Word | 0..65535 | 2 байта |
Integer | -32768..32767 | 2 байта |
longint | -2147483648.. 2147483647 | 4 байта |
Арифметические операции над данными целого типа: +, -, *, /, div (деление нацело), mod (остаток от деления).
Операции отношения: =, <>, <, >, <=, =>.
Стандартные функции:
Abs (x) | Модуль х |
Sqr (x) | Х2 |
Sqrt (x) | Квадратный корень из х |
Sin (x) | Синус х |
Cos (x) | Косинус х |
Arctan (x) | Арктангенс х |
Succ (x) | Следующее целое число (х+1) |
Pred (x) | Предыдущее целое число (х-1) |
Exp (x) | ex (e=2.7) |
Ln (x) | Натуральный логарифм |
К вещественному типу относится подмножество вещественных чисел, представленных в формате с плавающей точкой и фиксированным числом цифр. В записи вещественных чисел можно использовать обычный (4700=4.7*103)и экспоненциальный формат записи (4700=4.7000000Е+03). В экспоненциальной форме выделяют 2 части: мантиссу и порядок.
N=M*np
N – само число
M – мантисса
n – основание
p – порядок
1000000=1,0*106 (N=1000000; M=1,0; n=10; p=6)
В ПК:
MEp
M – мантисса
E – экспонента (…умножить на 10 в степени…)
p – порядок
-2.5000000Е+03 (М=-2.5000000, р=3)
Real | 2.9Е-39 .. 1.7Е+38 | 6 байт |
single | 1.5E-45 .. 3.4E+38 | 4 байта |
double | 5.0E-324 .. 1.7E+308 | 8 байт |
extended | 1.9E-4951 .. 1.1E+4932 | 10 байт |
Арифметические операции над данными вещественного типа: +, -, *, /.
Операции отношения: =, <>, <, >, <=, =>.
Стандартные функции:
Abs (x) | Модуль х |
Sqr (x) | Х2 |
Sqrt (x) | Квадратный корень из х |
Sin (x) | Синус х |
Cos (x) | Косинус х |
Arctan (x) | Арктангенс х |
trunc(x) | Отбрасывание дробной части |
round(x) | Округление до целого |
Exp (x) | ex (e=2.7) |
Ln (x) | Натуральный логарифм |
Выражение, составленное из переменного целого и вещественного типа, имеет вещественный тип. Допускается присваивание переменной вещественного типа значения выражения целого типа, но не наоборот.
Порядок выполнения операций: действия в скобках, *, /, div, mod; +, -; =, <>, <, >, <=, =>.
Символьный тип (char) представляет собой тип данных, предназначенный для хранения одного символа (буквы, знака или кода). В переменную этого типа может быть помещен любой из 256 символов расширенного кода ASCII.
Переменная типа char занимает один байт памяти. Значения типа char задаются в апострофах. Кроме того можно задавать значения используя код из таблицы ASCII. Над данными символьного типа можно выполнять операции сравнения.
Строковый тип
Строка - последовательность любых символов, заключенных в апострофы. Для определения данных строкового типа используется идентификатор string.
Булевский тип данных представляется двумя значениями True (истина) и False (ложь). Применяется в логических выражениях и выражениях отношения. При описании величин этого типа указывают слово boolean. Для размещения в памяти переменной булевского типа требуется 1 байт.
Перечислимый тип определяется как упорядоченный набор идентификаторов, заданный путем их перечисления. При этом список идентификаторов разделенных запятой указывается в круглых скобках. Задается перечисляемый тип в разделе type. Значения переменных перечисляемого типа не могут вводиться с клавиатуры и выводиться на экран.
Пример:type
A=(2, 4, 1, 7);
B=('c', 'L', '3', '|');
Интервальный тип позволяет задать 2 константы, которые определяют границы изменения переменных данного типа. Значение первой константы должно быть меньше значения второй, сами они должны быть целочисленными или символьными и разделены двумя точками.
Пример:var
A, В, С:-7..4;