Студопедия — КОНСТАНТЫ ПРОСТЫХ ТИПОВ И ТИПА STRING
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

КОНСТАНТЫ ПРОСТЫХ ТИПОВ И ТИПА STRING






Объявление таких констант обычно не вызывает трудностей, так как в качестве их значения используются нетипизированные константы или их идентификаторы.

Примеры объявлений:

Type

colors = (white, red, black);

{ ----- Правильные объявления: ----- } const

CurrCol colors = red;

Name String = 'Вирт H.';

Year Word = 1989;

X Real = 0.1;

Min Integer =0;

Max Integer = 10;

Days 1..31 = 1;

Answer Char = 'Y';

{----- Неправильные объявления: ----- }

Mass: array [Min..Max] of Real;

{Нельзя использовать типизированные константы в качестве границ диапазона} a,b,c: Byte =0;

{Нельзя использовать список идентификаторов}

КОНСТАНТЫ-МАССИВЫ

В качестве начального значения типизированной константы-массива используется список констант, отделенных друг от друга запятыми; список заключается в круглые скобки, например:

Type

colors = (white, red, black);

Const

ColStr: array [colors] of String [5] =('white', 'red', 'blak');

Vector: array [1..5] of Byte = (0,0,0,0,0);

При объявлении массива символов можно использовать то обстоятельство, что все символьные массивы и строки в Object Pascal хранятся в упакованном формате, поэтому в качестве значения массива-константы типа char допускается задание символьной строки соответствующей длины. Два следующих объявления идентичны:

const

Digit: array [0..9] of Char =

('0', '1', '2', ' 3 ', ' 4'•, '5', '6', '7', '8', '9');

DigChr: array [0..9] of Char = '0123456789';

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

Следующая программа выведет в компонент mmoutput три строки с монотонно увеличивающимися целыми числами:

Procedure TfmExample.bbRunClick(Sender: TObject);

Var

i, j, k, 1: Byte;

S: String;

Const

Matr: array [1..3, 1..5] of Byte =

((0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10,11,12,13,14));

Cube: array [0..1, 0..1, 0..2] of Integer =

(((О,1,2),(3,4,5)), ((6,7,8),(9,10,11)));

Mas4: array [0..1, 0..1, 0..1, 0..1] of Word =

((((О,1),(2,3)),

((4,5), (6,7))), (((8,9), (10,11)), ((12,13), (14,15))));

Begin

S:=' ';

for i:= I to 3 do for j:= 1 to 5 do

S:= S + IntToStr(Matr[i,j]) +' ';

mmOutput.Lines.Add(S);

S: = '';

for i:= 0 to 1 do for j:= 0 to 1 do

for k:= 0 to 2 do

S:= S + IntToStr(Matr[i,j,k]) +' ';

mmOutput.Lines.Add(S);

S:=''; for i:= 0 to 1 do

for j:= 0 to 1 do

for k:= 0 to 1 do

for l:= 0 to 1 do

S:= S + IntToStr(mas4[i,j,k,l]:3);

mmOutput.Lines.Add(S);

End;

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

КОНСТАНТЫ-ЗАПИСИ

Определение константы-записи имеет следующий вид:

<идентификатор>: <тип> = (<сп.знач.полей>)

Здесь <идентификатор> - идентификатор константы; <тип> - тип записи; <сп. знач. полей> - список значений полей.

Список значений полей представляет собой список из последовательностей вида: имя поля, двоеточие и константа. Элементы списка отделяются друг от друга двоеточиями, например:

Type

Point = record

X, Y: Real end;

Vect = array [0..1] of Point;

Month = (Jan, Feb, Mar, Apr, May, Jun, Jly, Aug, Sep, Oct, Nov, Dec);

Date = record

D: 1..31;

M: month;

Y: 1900..1999 end;

Const

Origon: Point = (X: 0; Y: -1);

Line: Vector =

((X: -3.1; Y: 1.5), (X: 5.9; Y: 3.0));

SomeDay: Date = (D: 16; M: May; Y: 1997);

Поля должны указываться в той последовательности, в какой они перечислены в объявлении типа. Если в записи используется хотя бы

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

Type

Forma = record

case Boolean of

True: (Birthplace: String [40]);

False: (Country: String [20];

EntryPort: String [20];

EntryDate: array [1..3] of Word;

Count: Word) end;

const

Percon1: Forma = (Country: 'Норвегия';

EntryPort: 'Мурманск';

EntryDate: (16, 3, 89);

Count: 12);

Percon2: Forma = (Birthplace: 'Москва');

КОНСТАНТЫ-МНОЖЕСТВА

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

Type

Days = set of 1..31;

Digc = set of ' 0 '.. ' 9 ';

Error = set of 1..24;

Const

WorkDays: Days = [1..5, 8..12, 15..19, 22..26, 29, 30];

EvenDigits: Digc = ['0','2', '4', '6', '8'];

ErrorFlag: Error= [];

КОНСТАНТЫ-УКАЗАТЕЛИ

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

const pR: ^Real = NIL;







Дата добавления: 2015-10-18; просмотров: 338. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

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

Закон Гука при растяжении и сжатии   Напряжения и деформации при растяжении и сжатии связаны между собой зависимостью, которая называется законом Гука, по имени установившего этот закон английского физика Роберта Гука в 1678 году...

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

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

Типовые примеры и методы их решения. Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно. Какова должна быть годовая номинальная процентная ставка...

Выработка навыка зеркального письма (динамический стереотип) Цель работы: Проследить особенности образования любого навыка (динамического стереотипа) на примере выработки навыка зеркального письма...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия