Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


—троковые данные. “ипы Char и String




ѕеречисл€емый тип данных. —троковый тип. ћножества. «аписи. ‘айлы

ѕеречисл€емый тип данных

ѕеречисл€емый тип €вл€етс€ простым и пор€дковым. ќн позвол€ет объединить вместе, в рамках одного типа ограниченное и упор€доченное множество (список с разделителем зап€та€ У,Ф) скал€рных (одиночных) посто€нных величин (констант), кажда€ их которых задаетс€ своим именем. ќписание типа имеет следующий синтаксис:

type название типа = (список значений типа);

¬ имени типа и в списке его значений должны использоватьс€ идентификаторы, образованные по правилам ѕаскал€. “ак как в идентификаторах ѕаскал€ нельз€ использовать кириллицу, в названии и именах элементов списка нельз€ использовать русские слова.

ѕример 1. ќписание типа с именем week (недел€):

type week = ( Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);

”пор€доченным в списке значений типа константам автоматически присваиваютс€ возрастающие на единицу номера, начина€ с нул€. ѕоэтому к перечисл€емым переменным и константам могут быть применены все операции сравнени€ и стандартные функции из библиотеки системных функций pred(), succ(), ord():

ord(≈) Ц возвращает номер элемента в множестве;

succ(≈) Ц возвращает следующее значение дл€ ;

pred(≈) Ц возвращает предыдущее значение дл€ .

ƒл€ введенного типа week будут справедливы следующие отношени€ элементов:

Sunday<Monday<Tuesday<Wednesday<Thursday<Friday<Saturday;

ord( Sunday )=0;

ord( Tuesday )=2;

succ( Friday ) =Saturday;

pred( Saturday ) = Friday;

ƒл€ перечисл€емых типов, как и дл€ других пор€дковых типов, определены функции Low() и High(), которые возвращают начальный и конечный объект типа. Ќапример, дл€ типа week: Low(week)= Sunday, High(week)= Saturday.

ѕеречисл€емые типы описываютс€ в разделе описани€ типов.

–ассмотренные выше стандартныетипы, введенные дл€одиночных величин, также можно эквивалентно представить в виде перечисл€емых типов. Ќапример, дл€ типов boolean, char и integer описание можно задать следующим образом (запись вида #xxx означает символ, чей код в таблице ASCII равен xxx):

Type

Boolean= (false, true);

char= #0..#255;

integer= -32768..32767;

 ажда€ константа может входить только в один из типов. ѕоэтому, если в программе описан тип week, то в нем нельз€ использовать тип day_off (выходные):

Type

day_off = ( Sunday, Saturday);

поскольку он содержит константы Sunday, Saturday, уже вход€щие в тип week.

≈сли тип описан, то он может быть присвоен другим переменным в разделе описани€ переменных, например:

var days: week;

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

var days: ( Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);

¬опросы дл€ проверки знаний.

1. ¬ чем заключаетс€ назначение и каков синтаксис перечисл€емого типа?

2.  ак устанавливаетс€ пор€док дл€ элементов перечисл€емого типа?

3. √де помещаютс€ описани€ перечисл€емых типов?

4. ћожет ли одна и та же величина входить в состав множеств элементов различных типов в одной программе?

5.  ак переменные перечисл€емого типа можно объ€вл€ть без предварительного описани€ этого типа?

6. ¬озможно ли описание типа следующего вида (ответ по€снить)?

type выходные_дни = (¬оскресенье, —уббота);

7. „ему равны значени€ следующих функций дл€ типа week: ord( Wednesday );ord( Friday )?

8. „ему равны значени€ следующих функций дл€ типа type day_off = ( Sunday, Saturday): Low(day_off); High(day_off)?

—троковые данные. “ипы Char и String

ѕростой стандартный пор€дковый тип сhar предназначен дл€ одиночных символов, которые представлены в нем при помощи кода ASCII. ќн относитс€ к простым типам данных. “ип String предназначен дл€ хранени€ строковых (литерных) величин до 255 символов (тип сhar), которые занимают 1 байт (8 бит), нумераци€ их начинаетс€ с единицы. ≈сли длина строковой величины не указываетс€ в описании, то по умолчанию дл€ нее в пам€ти отводитс€ место дл€ 255 символов. ѕримеры описани€ строковых величин:

Var S1: String[40];

Str: String;

ѕеременной S1 будет отведено в пам€ти 40 байт (или 40×8=320 бит), переменной Str - максимально возможные 255 байт.

«асылать информацию в переменные строкового типа можно при помощи присвоени€ им:

1) строковых величин (в программном коде они заключаютс€ в апострофы),

2) значени€ выражений, которые привод€т к строковым величинам.

¬ роли пустого элемента при засылке данных в строковые переменные выступает пробел, который изображаетс€ при помощи двух подр€д сто€щих апострофов.

≈сли засылаема€ информаци€ занимает не всю область пам€ти строковой переменной, то оставшеес€ пространство заполн€етс€ пробелами.

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

ѕример 1 программы с использованием обращений к символам строковых величин:

Var Str1, Str2: String[20]; Ch1, Ch2:Char;

Begin

Str1:=Т—омрuterТ;
Str2: =ТТ;

Ch1=Str1[5]; Ch2=Str2[5];

WriteLn(' Ch1=', Ch1, ' Ch2=', Ch2);

End.

¬ результате выполнени€ программы на экран монитора будет выдано сообщение:

Ch1=u Ch2=

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

–ассмотрим функции и действи€ над строковыми величинами.

1. Length(S). ƒл€ автоматизации действий со строковыми величинами главным €вл€етс€ определение их длины Ц число символов, содержащихс€ в них. ƒл€ этого используетс€ специальна€ функци€ Length(S), где S - строкова€ величина, у которой необходимо определить длину. „исло символов в ней присваиваетс€ самому имени функции.

ѕример 2. ѕосле выполнени€ фрагмента из двух операторов:

S:='computer';

Writeln('¬ слове ', S, ' ', Length(S),' символов')

на экран монитора будет выдано сообщение:





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2016-11-12; ћы поможем в написании ваших работ!; просмотров: 1460 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

Ќаука Ч это организованные знани€, мудрость Ч это организованна€ жизнь. © »ммануил  ант
==> читать все изречени€...

610 - | 541 -


© 2015-2024 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 0.018 с.