Любые данные, т.е. константы, переменные, значения функций или выражения, в Турбо Паскале характеризуются своими типами. Тип определяет множество допустимых значений, которые может тот или иной объект, а также множество допустимых операций, которые применимы к нему. Кроме того, тип определяет формат внутреннего представления данных в памяти ПК.
Турбо Паскаль характеризуется разветвлённой структурой типов данных.
В Турбо Паскале предусмотрен механизм создания новых типов данных, благодаря чему общее количество типов, используемых в программе, может быть сколько угодно большим.
ПРОСТЫЕ ТИПЫ
К простым типам относятся порядковые и вещественные типы.
Порядковые типы отличаются тем, что каждый из них имеет конечное число возможных значений. Эти значения можно определённым образом упорядочить (отсюда – название типов) и, следовательно, с каждым из них можно сопоставить некоторое целое число – порядковый номер значения.
Вещественные типы тоже имеют конечное число значений, которое определяется форматом внутреннего представления вещественного числа. Однако количество возможных значений вещественных типов настолько велико, что сопоставить с каждым из них целое число (его номер) не представляется возможным.
ПОРЯДКОВЫЕ ТИПЫК порядковым типам относятся целые, логический, символьный, перечисляемый и тип-диапазон.
Целые типы. Диапазон возможных значений целых типов зависит от их внутреннего представления, которое может занимать один, два или четыре байта
ЦЕЛЫЕ ТИПЫ | ||
НАЗВАНИЕ | Длина, байт | Диапазон значений |
Byte | 1 | 0…255 |
ShortInt | 1 | -128…+127 |
Word | 2 | 0…65535 |
Integer | 2 | -32768…+32767 |
LongInt | 4 | -2 147 483 648…+2 147 483 647 |
При использовании процедур и функций с целочисленными параметрами следует руководствоваться «вложенностью» типов, т.е. везде, где может использоваться Word, допускается использование Byte (но не наоборот), в LongInt “входит” Integer, который, в свою очередь, включает в себя ShortInt.
При дейстйствии с целыми чмслами тип результата будет соответствовать типу операндов, ф если операнды относятся к различным целым типам,- типу того операнда, который имеет максимальную мощность (максимальный диапазон значений). Возможное переполнение никак не контролируется, что может привести к недорозумениям.
Логический тип
ЛОГИЧЕСКИЕ ТИПЫ | |||
Название | Длина, Байт | OS | Значение |
BOOLEAN | 1 | Linux, DOS | False, True |
BYTEBOOL | 1 | Совместим с С | False, True |
WORDBOOL | 2 | Win | False, True |
LONGBOOL | 4 | Win | False, True |
. Значениями логического типа может быть одна из предварительно объявленных констант FALSE (ложь) или TRUE (истина).
Поскольку логический тип относится к порядковым типам, его можно использовать в операторе счётного типа.
Символьный тип. CHAR – занимает 1 байт. Значением символьного типа является множество всех символов ПК. Каждому символу присваивается целое число в диапозоне 0…255. Это число служит кодом внутреннего представления символа.
Для кодировки испоьзуется код ASCII (American Standart Code for Information Interchange – американский стандартный код для обмена информацией). Это 7-битный код, т.е. с его помощью можн озакодировать лишь 128 символов в диапозоне от 0 до 127. В то же время в 8-битном байте, отведенном для хранения символа в Турбо Паскале, можно закодировать в два раза больше символов в дапозоне от 0 до 255. Первая половина символов ПК с кодами 0…127 соответствует стандарту ASCII. Вторая половина символов с кодами 128ююю255 не ограничена жёсткими рамками стандарта и может менятся на ПК разных типов.
Символы с кодами 0…31 относятся к слжебным кодам. Если эти коды использовать в символьном тексте программы, они считаются пробелами.
Перечисляемый тип. Перечисляемый тип задаётся перечислением тех значений, которые он может получать. Каждое значение именуется некоторым идентификатором и рапологается в списке, обрамлённом круглыми скобками, напримерЖ
Type
Colors = (red, white, blue);
Применение перечисляемых типов делает программы нагляднее.
Соответствие между значениями перечисляемого типа и порядковыми номерами этих значений устанавливается порядком перечисления: первое значение списке получает порядковый номер 0, второе – 1 и т.д. максимальная мощность перечисляемого типа составляет 65536 значений, поэтому фактически перечисляемый тип задаёт некоторое подмножество целого типа WORD и может рассматриваться как компактное объявление сразу группы целочисленных констант со значениями 0,1 и т.д.
Использование перечисляемых типов повышает надёжность программы, благодаря возможности контроля тех значений, которые получают соответствующие переменные.
Тип-диапазон. Тип-диапазон есть подмножество своего базового типа, в качестве которого может выступать любой порядковый тип, кроме типа-диапазона.
Тип-диапазон задаётся границами своих значений внутри базового типа:
<мин.знач.>..<макс.знач.>
Здесь <мин.знач.> - минимальное значение типа-диапазона.
<макс.знач.> - максимальное его значение.
Type
Digit = ‘0’ ..’9’;
Dig2 = 48 .. 57;
При определении типа-диапазона нужно руководствоваться следующими правилами:а языке Pascal, пояснительную записку. 3 Построение математической модели Даны исходные данные: № Переходящий остаток продукции на начало года (А1) Приход продукции, шт (А2) Расход, шт (А3) Цена за 1 шт (А4) Остаток на конец года (А) 1 45 32 21 6.90 (A) 2 234 3454 32 5.67 (A) … … … … … … Итого: As=A+A ...
... ; Function ... Procedure ... Begin {раздел операторов} End. Оператор присваивания — один из самых простых и наиболее часто используемых операторов в любом языке программирования, в том числе и в Pascal. Он предназначен для вычисления нового значения некоторой переменной, а также для определения значения, возвращаемого функцией. В общем виде оператор присваивания можно ...
... так называемые указатели. Указатель - это переменная, которая в качестве своего значения содержит адрес байта памяти. С помощью указателей можно размещать в динамической памяти любой из известных в Object Pascal типов данных. Лишь некоторые из них (Byte, Char, ShortInt, Boolean) занимают во внутреннем представлении один байт, остальные - несколько смежных. Поэтому на самом деле указатель адресует ...
... I+J<N+I элементы матрицы расположены над побочной диагональю I+J>N+I элементы матрицы расположены под побочной диагональю. Ниже приведены примеры задач с массивами на языке Turbo Pascal. Пример 1. Ввод значений элементов массива с помощью генератора случайных чисел и вывод их в строчку. Примечание: Для использования случайных чисел в TP используются операторы ...
0 комментариев