Множества.
Значения множественного типа, также как и массивы, строятся из нескольких значений базового типа. В отличие от массивов, значения множественного типа может содержать любое количество различных элементов базового типа. Это количество может изменяться от 0 элементов (пустое множество) до максимального количества элементов. Таким образом, возможными значениями переменных множественного типа являются все подмножества значений базового типа. Число элементов множества не может быть более 256. Элементы нумеруются от 0 до 255.
Type Digits = set of 1..10,
Задается множество, состоящее из 10 цифр.
Если мы зададим Var a: digits;
то возможные значения переменной а будет составлять все сочетания элементов исходного множества.
а = <>( пустое множество)
а = 1
а =1, 2
а = ......
а = 1, 2, ......, 10
Для задания типа множества используются слова SET и OF, а затем указываются элементы множества.
Изображение множества или конструктор множества строится из списка элементов разделенных запятыми и заключенных в квадратные скобки.
Множеством должна быть бесповторная совокупность элементов.
Например, множества [1, 2, 3] и [1, 2, 3, 1] обозначают одно и то же.
Для множеств определены следующие операции:
+ - сложение; — -вычитание; * - перемножение;
= - проверка эквивалентности множеств;
<>- проверка неэквивалентности двух множеств;
<= - проверка, является ли левое множество подмножеством правого множества;
>= - проверка, является ли правое множество подмножеством левого множества;
IN - проверка, входит ли элемент, указанный слева в множество, указанное справа.
Операция вырабатывает значение TRUE, если элемент входит в указанное множество, и FALSE, если элемент не входит в указанное множество.
2 in [1..10, 15, 20] -TRUE
5 in [1, 2, 3, 10] - FALSE
Например: Составить программу ввода строки символов, которая может состоять из латинских букв и цифр и осуществлять проверку правильности введенных символов.
Program VvodStr;
Var
Str :string;
L,I :integer;
Priznak:boolean;
Begin
Write(‘Введите строку:’);
Readln(Str);
L:=Length(Str); Priznak:=false
if L=0 then Writeln(‘Пустая строка !!!’)
else
for i:=1 to L do
begin
Priznak:=Str[i] IN [ ‘ 0 ’..’ 9 ’, ‘A’ .. ‘Z’ , ‘a’ .. ‘z’ ];
if not Priznak then break
end;
if Priznak then Writeln(‘Правильная строка’ )
else Writeln(‘Неправильная строка’);
End.
Файлы.
Под файлом понимается именованная область внешней памяти ПЭВМ (жесткого диска, гибкой дискеты), либо логическое устройство (источник или приемник информации).
Файл должен иметь имя. Имя файла содержит компоненты одного типа (любой тип Паскаля). Длина файлов не оговаривается при объявлении, а ограничивается емкостью устройств внешней памяти. В зависимость от способа объявления различают три вида файлов:
Типизированные: < имя>: file of < тип>;
Текстовые: < имя>: text;
Нетипизированные: <имя>: file;
Вид файла определяет способ хранения информации в файле.
Дата добавления: 2015-01-13; просмотров: 685;