СКАЛЯРНЫЕ ТИПЫ ДАННЫХ в языке Pascal.
В основе тип переменной – мн-во значений, которые принимает переменная. С каждым типом связан набор операций.
Типы бывают:
• - структурированными
• - простыми
• - указатели
• - строки
• - процедурные типы
• - объекты
В свою очередь простые типы подразделяются на:
• - стандартный
• - определяемый (задается с помощью правил)
СТАНДАРТНЫЙ ТИП:
1) упорядоченный:
1. целый:
1. integer -32768..+32767
2. byte 0..255
3. word 0..65535
4. shortint -128..+128
5. longint -2147483648..+2147483647
Стандартные процедуры и функции:
abs, chr, dec, inc, odd, random, sqr, sqrt
2. логический:
true/false (1/0)
3. литерный: ASCII – American Standard Code for Information Interchange
Стандартные процедуры и функции:
ord, upcase
4. перечисляемый:
Перечисляемый тип задается перечислением тех значений, которые он может получать. Каждое значение именуется некоторым идентификатором и располагается в списке, обрамленном круглыми скобками, например:
1. type
2. colors = (red, white, blue);
Соответствие между значениями перечисляемого типа и порядковыми номерами этих значений устанавливается порядком перечисления: первое значение в списке получает порядковый номер 0, второе - 1 и т.д. Максимальная мощность перечисляемого типа составляет 65536 значений, поэтому фактически перечисляемый тип задает некоторое подмножество целого типа WORD и может рассматриваться как компактное объявление сразу группы целочисленных констант со значениями 0, 1 и т.д.
Использование перечисляемых типов повышает надежность программ благодаря возможности контроля тех значений, которые получают соответствующие переменные.
5. тип-диапазон:
Тип-диапазон есть подмножество своего базового типа, в качестве которого может выступать любой порядковый тип, кроме типа-диапазона. Тип-диапазон задается границами своих значений внутри базового типа:
<мин.знач.>..<макс.знач.>
Здесь <мин.знач> - минимальное значение типа-диапазона; <макс.знач> - максимальное его значение.
2) неупорядоченный:
вещественный.
Расширение для вещественного типа в Турбо-Паскале:
• real 11..12
• single 7..8
• double 15..16
• extended 19..20
• comp 19..20
24. Структурный тип данных "массив". Реализация массивов переменной длины.
МАССИВЫ.
Массив – структурна переменная, все компоненты которой одного типа.
Свойства:
1) К любой компоненте можно обратиться. Она явно обозначена, прямой доступ.
2) Число компонент определяется при описании и в программе не меняется
3) Каждой компоненте сопоставляется индекс, который определяется местом в массиве.
Типовые действия над массивами:
· ввод массива;
· просмотр элементов массива, поиск;
· накопление суммы, произведения;
· нахождение экстремума.
Описание типа массива задается следующим образом:
<имя типа> = ARRAY [ <сп.инд.типов>] OF <тип>
Здесь <имя типа> - правильный идентификатор;
ARRAY, OF - зарезервированные слова (массив, из);
<сп.инд.типов> - список из одного или нескольких индексных типов, разделенных запятыми; квадратные скобки, обрамляющие список, - требование синтаксиса;
<тип> - любой тип Турбо Паскаля.
В качестве индексных типов в Турбо Паскале можно использовать любые порядковые типы, кроме LONGINT и типов-диапазонов с базовым типом LONGINT.
Обычно в качестве индексного типа используется тип-диапазон в котором задаются границы изменения индексов.
В Турбо Паскале можно одним оператором присваивания передать все элементы одного массива другому массиву того же типа, например:
var
a,b begin
array [1. .5] of Single;
a := b;
end
После этого присваивания все пять элементов массива А получат те же значения, что и в массиве В. Однако над массивами не определены операции отношения. Нельзя, например, записать (if a=b then).
Сравнить два массива можно поэлементно.
Дата: 2019-02-19, просмотров: 263.