28607

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

Доклад

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

Значения этого типа занимают 4 байта и находятся в диапазоне от 2147483648 до 2147483647. Тип byte беззнаковый целый. Значения этого типа занимают 1 байт и находятся в диапазоне от 0 до 255.

Русский

2013-08-20

17.27 KB

0 чел.

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

Тип integer (целый). Значения этого типа занимают 4 байта и находятся в диапазоне от -2147483648 до 2147483647. Константа MaxInt хранит значение 2147483647.

Тип byte (беззнаковый целый). Значения этого типа занимают 1 байт и находятся в диапазоне от 0 до 255.

Тип word (беззнаковый целый). Значения этого типа занимают 2 байта и находятся в диапазоне от 0 до 65535.

Тип char (символьный). Значения этого типа занимают 1 байт и представляют собой символы в кодировке Windows. Стандартная функция Chr(x) возвращает символ с кодом x. Константы этого типа могут быть записаны в виде #x, где x - целое число от 0 до 255.

Перечислимый тип определяется упорядоченным набором идентификаторов:

type 
  
Season = (Winter,Spring,Summer,Autumn);
  DayOfWeek = (Mon,Tue,Wed,Thi,Thr,Sat,Sun);

Значения перечислимого типа занимают 4 байта.

Интервальный тип представляет собой подмножество значений целого, символьного или перечислимого типа и описывается в виде a..b, где a - нижняя, b - верхняя граница интервального типа:

var 
  
a: 0..10;
  c: 'a'..'z';
  d: Mon..Thr; 

Тип, на основе которого строится интервальный тип, называется базовым для этого интервального типа. Значения интервального типа занимают 4 байта.

Строковый тип

Строки в Pascal ABC имеют тип string и состоят из не более чем 255 символов. При описании

var s: string;

под переменную s отводится 256 байт, при этом в нулевом байте хранится длина строки.

Для экономии памяти предусмотрено описание вида

var s1: string[40];

В этом случае под строку отводится 41 байт (нулевой байт - под длину строки). В случае присваивания переменной s1 строки из более чем 40 символов лишние символы отсекаются, и длина строки s1 полагается равной 40.

При выполнении операции конкатенации вида s1+s1 результат считается строкой типа string, т.е.занимает 256 байт. Однако, если при конкатенации результат будет занимать более 255 символов, то программа завершится с ошибкой.

К символам в строке можно обращаться, используя индекс: s[i] обозначает i-тый символ в строке. Обращение к нулевому символу s[0] считается ошибочным. Чтобы изменить длину строки, следует воспользоваться процедурой SetLength. Если индекс i выходит за пределы памяти, отводимой под строку, то выдается сообщение об ошибке. Однако, если индекс i выходит лишь за пределы длины строки, то сообщение об ошибке не выдается.

Массивы

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

array [тип индекса1, ..., тип индексаN] of базовый тип

Тип индекса обязательно представляет собой интервальный тип и обязательно должен задаваться в виде a..b, где a и b - константные выражения целого, символьного или перечислимого типа. Например:

type enum=(w1,w2,w3,w4,w5);
var 
  a1,a2: 
array [1..10] of integer;
  b: 
array ['a'..'z',w2..w4] of string;
  c: 
array [1..10] of array [1..5] of real;

Базовый тип может быть любым (в частности, он может быть типом массива, как для переменной c).

Переменные-массивы одного типа можно присваивать друг другу, при этом будет производиться копирование содержимого одного массива в другой:

a1:=a2;

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

procedure p(arr: array [1..10] of integer);
...
p(a1);

Как правило, в этой ситуации копирование содержимого массива не требуется, поэтому массив рекомендуется передавать по ссылке:

procedure r(var arr: array [1..10] of integer);
...
r(a1);

К элементам массива обращаются при помощи переменных с индексами:

a1[3]:=a2[5];
b['f',w3]:='Hello';
c[3][4]:=3.14;

Наиболее часто встречающаяся ошибка при работе с массивами - выход за границы изменения индекса. В Pascal ABCвозникновение этой ошибки приводит к завершению работы программы.

Выражения и операции

Любое выражение имеет определенный тип и после вычисления возвращает некоторое значение. Простейшими выражениями являются переменные и константы. Более сложные выражения строятся из более простых с использованием операций, скобок, вызовов функций, индексов и приведений типов. Данные, к которым применяются операции, называются операндами.

В Pascal ABC имеются следующие операции: @, not, ^, *, /, divmodandshlshr, +, -, orxor, =, >, <, <>, <= и >=.

Арифметические операции

К арифметическим относятся бинарные операции + - * / для вещественных и целых чисел, бинарные операции div и mod для целых чисел и унарные операции + и - для вещественных и целых чисел. Выражение, имеющее числовой тип, называется арифметическим. Тип арифметического выражения определяется по следующему правилу: если все операнды целые и в выражении отсутствует операция деления /, то выражение имеет тип integer, в противном случае выражение имеет тип real. Например, если b имеет тип byte, c имеет тип 1..9, то b+c и -b имеют тип integer, а 2.0+b и 1/2 - тип real.

Логические операции

К логическим относятся бинарные операции andor и xor, а также унарная операция not, имеющие операнды типа boolean и возвращающие значение типа boolean. Выражение, имеющее тип boolean, называется логическим.

Операции отношения

Операции отношения <, >, <=, >=, =, <> возвращают значение типа boolean и применяются к операндам целого, вещественного, символьного, логического и строкового типов, а также к типизированным указателям. Операции = и <> также применяются к операндам типа pointer, к операндам, являющихся объектами классов и к константе nil. При сравнении символа и строки символ преобразуется в строку длины 1.

Строковые операции

Помимо операций отношения <, >, <=, >=, =, <>, к строковым и символьным операндам применима операция конкатенации (слияния) +. Ее результат имеет строковый тип. Например, 'a'+'b'='ab'. Поскольку строки могут содержать максимум 255 символов, то если сливаются строки суммарной длины больше 255, то программа завершается сообщением об ошибке


 

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

32202. Тактика предъявления для опознания живых лиц 24 KB
  Тактика предъявления для опознания живых лиц. изменены на короткое время кримка разработала тактич правила проведения опознания по функц признакам. Делится как бы на 2 этапа: 1 опознаваемый не знает что его предъявляют для опознания опознаваемый и опознающий находятся в разных комнатах 2 После того как он опознан их заводядт в один кабинет и сост протокол. Общие правила предъявления: 1 предъявлению предшествует допрос опознающего лица при чём обращается внимание на два обства – надо выяснить условия в которых опознающий наблюдал...
32203. Тактика предъявления для опознания предметов 23.5 KB
  Следль спрашивает узнает ли опознающий данный предмет среди предъявленных и при положит ответе предлагает указать признаки по которым опознан вещь. Если опознающий сообщил какието новые детали не указанные им на допросе они дословно фиксирся в протоколе а опознающий допрашивается о причинах по которым он не сообщил своевременно и признаках предмета. Если опознающий пожелает надо разрешить ему взять вещь в руки.
32204. Виды следственного эксперимента 38.5 KB
  Виды следственного эксперимента. Нр эксперименты по проверке возможности проникновения лиц через определенные преграды совершение опред действий – переноса тяжести; 3 установление механизма образования следов. Доказательственное значение следственного эксперимента зависит от степени его приближения к реальным событиям. Они зависят от обстоятельств сопровождавших проверяемое событие содержания события и целей эксперимента определенных ст.
32205. Значение повторного осмотра МП и тактич особенности его проведения 27.5 KB
  Значение повторного осмотра МП и тактич особенности его проведения. Повторный осмотр – новое полное исследе всего МП уже подверг осмотру. Необходимость в нем возн в случ когда первичный осмотр проведен в неблаг услх метеорологич или недоброкачественно. При провед повт осмотра примен те же проц правила и такт приемы что и при провед первичн осмотра.
32206. Тактич приемы производства обыска на местности 26.5 KB
  Тактич приемы производства обыска на местности. В процессе обыска просматриваются и обследуются щупом стога сена цветоч клумбы корни кустарников. Особенности обыска на открытой местности. Тактика обыска определяется с учетом размеров обыскиваемого пространства характера искомых объектов наличия нежилых построек водоемов колодцев особенностей грунта и растительности.
32207. Источники информации и тактические основы розыска преступников 44.5 KB
  Источники инфции и тактич основы розыска престков. Последнее предназначено для целенаправленного розыска различных объектов представляющих интерес для расследования. Следователь информирует работников патрульнопостовой службы ГИБДД участковых инспекторов сотрудников служб криминальной милиции в масштабах города на территории которого ведется розыск об индивидуальноопределенных признаках объектов розыска. Нередко важные очевидцы устанавливаются после обращения органов расследования к коллективам предприятий учреждений организаций...
32208. Тактические основы следственного осмотра помещений и участков местности не являющимися местом преступления 37 KB
  Тактич основы след осмотра помещ и участков местности не явл местом происш. Осмотр – следст действие заключающееся в восприятии следлем доз обстановки помещ не явл МП для установления харра и обстоятельств престя установления лиц возможных пределов события. В ходе расслед следлю прих пров осмотр помещ и учков местн не явл МП в целях обнар на них следов престя тела челка для выявлен следов престя или налич особых примет а также иных объектов кот приобщся к УД в качве докв. Следственный осмотр одно из наиболее...
32209. Подготовка следователя к осмотру места происшествия 28 KB
  Вопервых когда преступление уже совершено и осмотр необходим в целях обнаружения следов и других вещественных доказательств выяснения обстановки места происшествия а равно иных обстоятельств имеющих значение для дела. Подготовительные мероприятия к осмотру места происшествия включают постоянную готовность к выезду подготовку к осмотру после того как получено сообщение о происшествии и подготовительные действия осуществляемые непосредственно на месте происшествия. Перед выездом на место происшествия проверить укомплектованность...