русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Вещественные типы


Дата добавления: 2013-12-23; просмотров: 943; Нарушение авторских прав


End;

Begin

Var

Type

Var

Type

Var

End;

Begin

Type

Type

End;

Begin

Var

Простые типы

ТИПЫ ДАННЫХ

Любые данные в Паскале характеризуются своими типами. Тип определяет множество допустимых значений, которые может иметь тот или иной объект, а также множество допустимых операций, которые применимы к нему. Кроме того, тип определяет формат внутреннего представления данных в памяти ЭВМ.

Рис. Структура типов данных

 

К простым типам относятся порядковые и вещественные.

Порядковые типы отличаются тем, что каждый из них имеет конечное число возможных значений. Эти значения можно определенным образом упорядочить (отсюда – название типов) и, следовательно, каждому из них можно сопоставить некоторое целое число – порядковый номер значения.

Вещественные типы, строго говоря, тоже имеют конечное число значений, которое определяется форматом внутреннего представления вещественного числа. Однако количество возможных значений вещественных типов настолько велико, что сопоставить с каждым из них целое число (его номер) не представляется возможным.

 

6.1.1. Порядковые типы

К порядковым типам относятся целые, логический, символьный, перечисляемый и тип-диапазон.

К любому значению порядкового типа можно применить встроенные функции:

Ord(x) – возвращает порядковый номер значения x;

Pred(x) – возвращает значение, предшествующее значению x. Если x – первое допустимое значение любого порядкового типа, кроме булевского, то возвращается порядковый номер последнего значения;



Succ(x) – возвращает значение, следующее за указанным x. Если x – последнее допустимое значение любого порядкового типа, кроме булевского, то возвращается порядковый номер первого значения.

Например, если в программе определена переменная

с : Char;

с := '5';

то функция PRED(C) вернет символ '4', а функция SUCC(C) - символ '6'.

Целые типы. Диапазон возможных значений целых типов зависит от их внутреннего представления, которое может занимать 1, 2 или 4 байта.

Длина, байт Название типа Диапазон значений
Byte 0…255
Shortint -128…127
Word 0…65636
Integer -32768…32767
Longint -2147483648…2147483647

Замечание. При использовании процедур и функций с целочисленными параметрами следует руководствоваться «вложенностью» типов. Например, везде, где может использоваться тип Word, допускается использовать тип Byte (но не наоборот).

Рассмотрим основные встроенные процедуры и функции, применимые к целочисленным типам. В квадратных скобках будем указывать необязательный параметр.

Обращение Тип параметров Тип результата Действие
Chr(x) x – выражение типа byte char Функция возвращает символ по его коду
Dec(x[,j]) x, j –любого целого типа Процедура уменьшает значение x на j, при отсутствии j – на 1.
Inc(x[,j]) x, j –любого целого типа Процедура увеличивает значение x на j, при отсутствии j – на 1.
Odd(x) x – любого целого типа boolean Функция возвращает true, если аргумент – нечетное число, False – если четное.
Random(x) x – выражение типа word Как у параметра Функция возвращает псевдослучайное число, равномерно распределенное на интервале [0;x).
randomize     Процедура инициализирует встроенный генератор случайных чисел.

Логический тип (boolean).Значениями логического типа может быть одна из объявленных констант False (ложь) или True (истина).

Значению False соответствует число 0, а значению True – любое число отличное от 0. Справедливо соотношение: False<True.

Символьный тип (char). Значением символьного типа является множество всех символов персонального компьютера. Каждому символу приписывается целое число в диапазоне от 0 до 255. Это число служит кодом внутреннего представления символа. К типу Char применимы операции отношения, а также встроенные функции:

Ord(x) – функция, возвращает код внутреннего представления символа x;

UpCase(ch) - функция типа char; возвращает прописную букву, если ch – строчная латинская буква, в противном случае возвращает сам символ ch (для кириллицы возвращает исходный символ).

Перечисляемый тип. Перечисляемый тип задается перечислением тех значений, которые он может получать. Каждое значение именуется некоторым идентификатором и располагается в списке, обрамленном круглыми скобками, например:

colors = (red, white, blue);

Применение перечисляемых типов делает программы нагляднее. Если, например, в программе используются данные, связанные с месяцами года, то следующий фрагмент программы был бы наглядным (кириллицу нельзя использовать в идентификаторах):

TypeMonth=(jan,feb,mar,may,jun,jul,aug,sep,oct,nov,dec);

varmonth: TypeMonth;

if month = augthenLabel1.Caption := 'Каникулы!';

Значения перечисляемого типа нумеруются в порядке перечисления, причем первое значение в списке имеет номер 0, второе – 1 и т. д.

Переменные любого перечисляемого типа можно объявлять без предварительного описания этого типа, например:

days:(Monday, Tuesday, Wednesday);

Для переменных этого типа:

1. Допустимы все процедуры и функции для работы с порядковыми типами.

2. Значения перечисляемых типов не могут быть аргументами процедур Read и Write.

3. С операндами данного типа допускаются только операции отношения.

4. Могут быть использованы в операторах :=, а также в качестве индексов массивов и границ оператора for.

 

Тип-диапазон (интервальный тип) представляет собой интервал значений какого-либо порядкового типа, называемого базовым. Тип-диапазон задается границами своих значений внутри базового типа:

<мин. знач.>..<макс. знач.>

Здесь <мин. знач. > – минимальное значение типа-диапазона; <макс. знач.> – максимальное его значение.

Например:

digit = '0'..'9'; {базовый тип – char}

n = 1..10; {базовый тип – integer}

Тип-диапазон не обязательно описывать в разделе type, а можно указывать непосредственно при объявлении переменной, например:

date : 1..31;

month: 1..12;

При определении типа-диапазона нужно руководствоваться следующими правилами:

· два символа “..” рассматриваются как один символ, поэтому между ними недопустимы пробелы;

· левая граница диапазона не должна превышать его правую границу.

Тип-диапазон наследует все свойства своего базового типа, но с ограничениями, связанными с его меньшей мощностью. В частности, если определена переменная

days = (mо, tu, we, th, fr, sa, su);

WeekEnd = sa .. su;

w : WeekEnd;

w := sa;

то ord(w) вернет значение 5, в то время как pred(w) приведет к ошибке.

 

Значением вещественных типов может быть произвольное число, заданное с некоторой конечной точностью, зависящей от внутреннего формата вещественного числа.

Длина, байт Название Количество значащих цифр Диапазон значений
Real Single Double Extended Comp 11…12 7…8 15…16 19…20 19…20 2.9*10e-39…1.7*10e38 1.5*10e-45…3.4*10e38 5.0*10e-324…1.7*10e308 3.4*10-4951…1.1*10e4932 -2e63+1…+2e63-1

Для работы с вещественными данными могут использоваться встроенные математические функции, представленные в таблице. В этой таблице Real означает любой вещественный тип, Integer - любой целый тип.

Обращение Тип результата Примечание
Abs (x) Real, Integer Модуль аргумента
Pi Real π =3.141592653...
Sqr (x) Real, Integer Квадрат аргумента
Sqrt (x) Real Корень квадратный
Sin (x) Real Синус, угол в радианах
Cos (x) Real Косинус, угол в радианах
ArcTan (x) Real Арктангенс (значение в радианах)
Exp (x) Real Экспонента
Ln (x) Real Логарифм натуральный
Frac (x) Real Дробная часть числа
Int (x) Real Целая часть числа
Random Real Псевдослучайное число, равномерно распределенное в диапазоне 0..1

Замечание. Генератор псевдослучайных чисел (Random) представляет собой функцию, которая берет некоторое целое число, называемое базовым, изменяет его разряды по определенному алгоритму и выдает новое число-результат. Одновременно с этим новое число становится базовым при следующем обращении к функции и т. д. (Так как алгоритм процедуры не меняется в ходе ее работы, числа называются псевдослучайными.) Перед использованием процедуры Random необходимо обращение к процедуре Randomize (без параметров).

 



<== предыдущая лекция | следующая лекция ==>
Оператор цикла со счетчиком (с параметром) for | Множества


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.