
- •1.2. Понятие алгоритма. Словесное задание алгоритмов
- •III. Тело алгоритма.
- •1.3. Типы алгоритмов. Операция присваивания
- •1.4. Графическое задание алгоритмов. Блок-схемы. Исполнение алгоритмов
- •2. Структурное программирование. Общие сведения по алгоритмическому языку паскаль и его среде разработки
- •2.1. Предпосылки появления и основные принципы структурного программирования
- •2.2. Язык программирования Турбо Паскаль. Единая интегрированная среда разработчика Turbo Pascal 7.0 (tp 7.0), структура ее диалогового окна и основные команды
- •2.3. Компилятор языка Паскаль Free Pascal ( fpc). Среда разработки Free Pascal ide
- •3. Основные элементы языка Паскаль. Алфавит. Идентификаторы. Типы данных. Выражения. Операции. Отношения. Математические функции в языке Паскаль
- •3.1. Синтаксис и семантика в описании алгоритмического языка. Алфавит языка Турбо-Паскаль
- •3.2. Элементарные конструкции языка Паскаль
- •3.3. Общая структура типов данных. Простые типы в языке Паскаль
- •3.4. Выражения, математические, логические операции, отношения, математические функции в языке Паскаль
- •3.5. Память пк, сегментная адресация, динамическая память
- •3.6. Указатели и динамические переменные
- •3.6.1. Виды указателей и их описание
- •3.6.2. Действия с указателями
- •3.6.3. Выделение и освобождение динамической памяти
3.3. Общая структура типов данных. Простые типы в языке Паскаль
При составлении алгоритмов решения расчетных задач необходимые данные представляют собой одиночные величины и их совокупности. Важнейшей характеристикой данных является их тип.
Принадлежность данных к определенному типу автоматически в соответствии с соглашениями самого алгоритмического языка задает для них следующие свойства:
- математическую форму представления соответствующих величин и их диапазон изменения;
- внутреннюю форму представления данных в ЭВМ;
- операции и функции, которые могут выполняться над величинами данного типа.
Каждая одиночная величина в алгоритмических языках занимает целое число байтов (совокупностей из 8 подряд стоящих двоичных разрядов - бит).
В общем случае в алгоритмических языках присвоение типов переменным (которое также называют декларацией переменных) может производиться:
- явно - при помощи полного описания, которое обычно помещают в начало программы, но в некоторых языках (например, в Visual Basic) описание может стоять в произвольном месте программы;
- неявно (косвенно) простым указанием имени переменной, у которой тип задается начальной ее буквой (Fortran), окончанием специального вида-суффиксом (Visual Basic) либо другими способами.
В языке Паскаль типы всех используемых величин задают обязательно явно в начале программы (в разделе описаний). Все переменные, используемые в программе, должны быть указаны (объявлены) в данном разделе с указанием их типа. Объявления типов величин в программе дают компилятору необходимую информацию о свойствах данных величин, в соответствии с которой он отводит им необходимое место в памяти, задает форму представления в ней и порядок выполнения операций.
Обязательное описание типа в Паскале приводит к некоторой избыточности в тексте программ. Однако, в то же время, оно позволяет избежать целый ряд коллизий, возникающих при различного рода случаях неявного описания.
Основными разновидностями типов в Паскале являются:
- простые (скалярные) типы, задающие одиночные величины;
- структурированные типы, задающие совокупности из величин одного или нескольких типов;
- указатели - переменные, которые содержат адреса других переменных или более сложных объектов.
Простой (скалярный) тип данных. Этой разновидности принадлежат следующие типы одиночных величин: 1)целые, 2)логические, 3)символьные, 4)перечисляемые, 5)интервальные, 6)вещественные.
По способу образования у одиночных величин выделяют стандартные типы - 1) целые, 2) логические, 3) символьные, 6) вещественные. Такие типы пользователь может выбирать только из заданных в языке вариантов. Помимо них есть типы, определяемые пользователем - 4) перечисляемые и 5) интервальные.
Также среди простых выделяют порядковые (1-5) и вещественные (6) типы. Порядковые величины характеризуются тем, что множества их значений ограничены и могут быть упорядочены, что позволяет использовать различные функции для установления и изменения порядка, организации различных выборок.
Стандартные типы языка Паскале даны в Таблице 3.1.
Таблица 3.1. Стандартные типы простых типов данных в Паскале
Идентификатор |
Длина (байт) |
Диапазон значений |
Операции |
Целые типы |
|||
integer |
2 |
-32768..32767 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
byte |
1 |
0..255 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
word |
2 |
0..65535 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
shortint |
1 |
-128..127 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
longint |
4 |
-2147483648..2147483647 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
Вещественные типы |
|||
real |
6 |
2,9x10-39 - 1,7x1038 |
+, -, /, *, >=, <=, =, <>, <, > |
single |
4 |
1,5x10-45 - 3,4x1038 |
+, -, /, *, >=, <=, =, <>, <, > |
double |
8 |
5x10-324 - 1,7x10308 |
+, -, /, *, >=, <=, =, <>, <, > |
extended |
10 |
3,4x10-4932 - 1,1x104932 |
+, -, /, *, >=, <=, =, <>, <, > |
Логический тип |
|||
boolean |
1 |
true, false |
Not, And, Or, Xor, >=, <=, =, <>, <, > |
Символьный тип |
|||
char |
1 |
все символы кода ASCII |
+, >=, <=, =, <>, <, > |
Переменные типа shortint, integer и longint являются целыми числами со знаком, переменные byte и word - целые числа без знака.
Структурированные типы имеют четыре разновидности: массивы, строки, множества, записи и файлы.
В виде схемы общая система типов в языке Pascal показана на рис.3.1.
Рис.3.1. Общая система типов в языке Pascal
Вопросы для проверки знаний.
1. Как в языке Паскаль объявляются типы всех используемых величин?
2. Назовите три основных разновидностями типов в Паскале.
3. Какие простые типы в Паскале являются стандартными, а какие - определяемые пользователем ?
4. Какие простые типы в Паскале являются порядковыми, а какие - вещественными ?
5. Чем отличается задание целых значений при помощи типов shortint, integer и longint от задания типами byte и word.