Пример 6

В заданном тексте найти самое длинное слово.

program Project2;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

stroka,max_Str:string;

i,n,j:integer;

begin

writeln('vvedite stroky');

readln(stroka);

max_Str:='nichego ne vvedeno!';

n:=0;

i:=1;

while i<=length(stroka) do

begin

while (i<=length(stroka)) and

(stroka[i]=' ') do inc(i); // находим букву

j:=i;

while (j<=length(stroka)) and

(stroka[j]<>' ') do inc(j); // находим пробел

if n<(j-i) then

begin

n:=j-i;

Max_Str:= copy(stroka,i,j-i);

end;

i:=j;

end;

Writeln('Max stoka ', Max_Str);

ReadLN;

end.

Записи

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

Пример описания:

student=record

Imya: string[20];

Familiya:string[20];

Otchestvo:string[30];

Gruppa:string[10];

Ocenki:string[60];

End;

Обращение к записям происходит следующим образом student.imya:=’Ivan’. Если так обращаться ко всем полям, тем более, если их большое количество, то обращение становится очень объемным. Для упрощения обращения используют оператор with.

Пример работы оператора:

with student do

begin

Imya:=’Ivan’;

familia:=’Petrov’;

end;

Если в программе более одной записи одного вида, то удобнее создать новый тип:

type StudentType=record

// здесь перечисляются поля записи

end;

var

Student: StudentType;// переменная типа запись

// массив переменных типа запись

Tablica_studentov: array [1..30] of student;

Множества

Множество – это конечный набор значений, объединенных одним именем. Множество не может содержать более чем 255 элементов. Каждое значение может входить во множество только один раз.

Пример описания множества:

var

mn:set of char;

mn2:set of ’A’..’Z’;

Операции над множествами.

При помощи оператора (значение) in (множество) можно узнать является ли значение членом множества. Результат - либо true, либо false.

Пример использования оператора:

var

mn1: set of ’b’..’e’

otv:=’z’ in mn1;

Результат будет false

Процедура include (множество, значение) включает новое значение во множество. Также можно использовать «+».

Пример использования процедуры:

var

mn:Set of char;

mn:=[’A’..’C’];

Include(mn,’D’);

Результатом будет множество {A,B,C,D}.

Процедура exclude (множество, значение) обратная процедуре include. Процедура exclude исключает значение из множества. Также можно использовать «-».

Пример использования процедуры:

var

mn:Set of char;

mn:=[’A’..’C’];

exclude(mn,’C’);

Результатом будет множество {A,B}.

Для множеств определены все логические операции («+», «-», «>», «<», «>=», «<=», «=»).

Оператор пересечения множеств – «*».


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: