36577

Концепция типа данных. простой тип данных

Контрольная

Информатика, кибернетика и программирование

К любому порядковому типу применимы следующие функции: OrdX порядковый номер значения выражения Х этого типа; PredX предыдущее значение выражения Х этого типа; SuccX следующее значение выражения Х этого типа; HighX наибольшее значение диапазона аргумента Х; LowX наименьшее значение диапазона аргумента Х; Функция Ord определена для любого значения порядкового типа причём нумерация значений начинается от номера 0 номера наименьшего значения типа. Функции Pred и Succ не определены соответственно для левой и правой границы...

Русский

2013-09-22

38 KB

3 чел.

Концепция типа данных. простой тип данных.

Согласно приведенной классификации, простые типы включают порядковые и вещественные типы. Рассмотрим вначале порядковые типы.

Порядковый тип - такой тип, который содержит упорядоченный ряд значений так, что каждому значению можно однозначно сопоставить некоторый порядковый номер (отсюда и название - порядковый тип). Другими словами, на порядковом типе задан линейный порядок значений (с отношениями <, >, <=, >=, =, <> между значениями). Каждый порядковый тип эквивалентен некоторому отрезку натурального ряда.

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

К любому порядковому типу применимы следующие функции:

Ord(X) - порядковый номер значения выражения Х этого типа;

Pred(X) - предыдущее значение выражения Х этого типа;

Succ(X) - следующее значение выражения Х этого типа;

High(X) - наибольшее значение диапазона аргумента Х;

Low(X) - наименьшее значение диапазона аргумента Х;

Функция Ord определена для любого значения порядкового типа, причём нумерация значений начинается от номера 0 (номера наименьшего значения типа). Функции Pred и Succ не определены соответственно для левой и правой границы отрезка номеров значений типа.

Рассмотрим теперь разновидности порядковых типов согласно классификации.

Целые типы. Помимо уже знакомого нам типа integer, в Турбо Паскале имеется ещё несколько типов для представления целых чисел. Два из них представляют отрезки натуральных чисел:

byte - тип с диапазоном значений от 0 до 255 (представимых одним байтом);

word -тип с диапазоном значений от 0 до 65535 (представимых двумя байтами).

Два целых типа представляют "короткие целые" и "длинные целые":

shortint - тип с диапазоном значений -128 .. +127 (длиной 1 байт)

longint - тип с диапазоном значений -2147483648 ..+2147483647 (длиной четыре байта).

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

Для целых типов ord(x) = х, pred(x) = x - 1 , succ(x) = x + 1.

Символьный тип. Значениями этого типа являются, как указывалось ранее, все символы кодовой таблицы ASCII (Американский стандартный код внутримашинного обмена, используемый в системе MS DOS), которые считаются, упорядочены своими кодами. Для символьного типа применимы бинарные отношения (<,>, <=,>=,=, <>). Значением функции ord является код символа (в диапазоне 0..255). Стандартными функциями, применимыми к типу char, являются:

chr(b) - преобразование значения выражения b типа byte в символ ASCII.

upcase(c) - преобразование строчных латинских букв в прописные (для символов, не являющихся латинскими буквами, результатом является сам символ с).

Логический тип. Значениями логического типа (Boolean) являются константы true и false, которые считаются упорядоченными так, что ord(false)=0, ord(true) =1.

Соответственно, pred(true)= false, succ(false) =true, false<true, true>false.

Логические операции and, or, xor, not применимы также к целым числам, как битовые операции (0 - эквивалентен false, а 1 - эквивалентен true). К битовым операциям также относятся операции shl и shr (J shl K - сдвиг J на K бит влево, и J shr K - сдвиг J на K бит вправо).

Перечислимый тип. Это тип, задаваемый перечислением своих значений. В Паскале приняты соответствующие формы описания перечислимых типов, наиболее общим, из которых является следующий:

type < имя типа > = ( < список значений > );

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

type color = (black, red, green, blue, white );

Максимальная мощность перечислимого типа - 65536 значений.

Для любого порядкового типа можно определить тип-диапазон как подмножество значений этого порядкового типа (базового типа). Тип диапазон определяется своими границами внутри базового типа в форме : < мин.значение>..< макс.значение >

Например, type digit = 0..9; {тип - десятичная цифра}

date = 1..31; { тип - дата }

lat_lt = 'A' ..'Z'; { тип - латинская буква }

color3 = red .. blue; {тип - три цвета из набора color}

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

Вещественные типы. Помимо типа real, с которым уже встречались ранее, в Турбо Паскале имеется ещё несколько типов данных для представления вещественных чисел. Для всех этих типов характерно то, что значения чисел представляются приближенно в отличие от представлений целых чисел. Точность представления зависит от вещественного типа, для каждого из которых имеется свой формат представления числа.

Кроме типа real имеется ещё 3 вещественных типа:

single - диапазон десятичного порядка от -45 до +38 (длина числа 4 байта);

double - диапазон десятичного порядка от -324 до +308 (длина числа 8 байтов);

extended -диапазон десятичного порядка от -4951 до +4932 (длина 10 байтов);

Фактически эти типы перекрывают все потребности в точности представления вещественных чисел.

Дополнительно к указанным типам в Турбо Паскале имеется также специальный тип comp, который рассматривается как вещественное число. Фактически число типа comp - целое число со знаком, занимающее 8 байтов и представляющее 19-20 значащих десятичных цифр. Этот тип может использоваться для представления денежных сумм, обеспечивая точность до минимальных денежных единиц.

Для операций с вещественными числами предусмотрены стандартные функции, в числе которых: тригонометрические функции (sin, cos, arctan), логарифм и экспонента (ln, exp), выделение целой и дробной части (int, frag), квадратный корень (sqrt), функции abs, sqr и random, аналогичные функциям, используемым для целых типов.

Задача 4.2.6(15)

program Project15;

type mas=array[1..4,1..4] of Integer;

var a,b:mas;

i,j,k,l,s:Integer;

procedure p(x:mas; e:Integer; var n:integer);

var i,min:Integer;

begin

min:=x[1,1];

n:=1;

for i:=2 to e do

if x[i,i]<min then

begin

min:=x[i,i];

n:=i;

end;

end;

begin

for i:=1 to 3 do

for j:=1 to 3 do

read(a[i,j]);

Writeln;

for i:=1 to 4 do

for j:=1 to 4 do

read(b[i,j]);

p(a,3,k);

p(b,4,l);

s:=a[k,k];

a[k,k]:=b[l,l];

b[l,l]:=s;

Writeln;

for i:=1 to 3 do begin

for j:=1 to 3 do begin

write(a[i,j],' ');

end; writeln; end;

Writeln;

for i:=1 to 4 do begin

for j:=1 to 4 do begin

write(b[i,j],' ');

 end; writeln; end;

Readln;

end.


 

А также другие работы, которые могут Вас заинтересовать

12165. КЛАССЫ ОБЩЕГО НАЗНАЧЕНИЯ 51 KB
  Классы общего назначения Как показывает практика в большинстве задач приходится использовать однотипные структуры данных: списки массивы множества и т.д. От задачи к задаче изменяются только их элементы а методы работы сохраняются. Например для любого списка нужны п...
12166. Основные объекты в Delphi 84 KB
  События формы OnCreate происходит сразу после создания формы. Обработчик этого события может установить начальные значения для свойств формы и ее компонентов запросить у операционной системы необходимые ресурсы создать служебные объекты а также выполнить другие д
12167. Рекомендации по оформлению исходного кода Delphi 95.72 KB
  Рекомендации по оформлению исходного кода Delphi Цель Повысить читаемость исходного кода разрабатываемого программистами. Сфера приложения и определения Рассматриваются файлы содержащие исходный код на языке Object Pascal то есть файлы проекта и файлы модулей. Даютс
12168. Свойства в Delphi 83 KB
  Свойства Понятие свойства Помимо полей и методов в объектах существуют свойства. При работе с объектом свойства выглядят как поля: они принимают значения и участвуют в выражениях. Но в отличие от полей свойства не занимают места в памяти а операции их чтения и записи а
12169. Быстродействие процессора 17.54 KB
  Быстродействие процессора Быстродействие процессора это одна из важнейших его характеристик определяющая эффективность работы всей микропроцессорной системы в целом. Быстродействие процессора зависит от множества факторов что затрудняет сравнение быстродействи...
12170. Установка основных компонентов ПК 284.24 KB
  Лабораторная работа №14 Установка основных компонентов ПК 1. Цель работы Научиться собирать все компоненты ПК 2. Теоретические сведения Сборка компьютера подобна игре в Кубик Рубика: пока вы не собрали его в первый раз это кажется невозможным но когда вам покажут...
12171. Изучение конструкции блока питания АТ и АТХ 132.85 KB
  Лабораторная работа №15 Изучение конструкции блока питания АТ и АТХ 1. Цель работы Изучения конструкции блока питания АТ и АТХ 2. Теоретические сведения Назначение и принципы работы блоков питания Главное назначение блоков питания преобразование электрической...
12172. Диагностика работоспособности материнской карты с помощью POST card 35.25 KB
  Лабораторная работа № 16 Диагностика работоспособности материнской карты с помощью POST card 1. Цель работы Научиться пользоваться POST картой 2. Теоретические сведения POST карта тестер для диагностики и ремонта материнских плат ...
12173. Строение, принцип действия и тех.обеспечение ИБП 116.11 KB
  Лабораторная работа №19 Строение принцип действия и тех.обеспечение ИБП 1. Цель работы Изучение принципа работы ИБП 2. Теоретические сведения Составные части ИБП Реализация основной функции достигается работой устройства от аккумуляторов установленных в корпу...