- Главная
- Информатика
- Структурированные типы в Pascal
Содержание
- 2. Структурированные типы в Pascal Pascal Множества Примеры определения и задания множественных типов: type Caps = set
- 3. Структурированные типы в Pascal Pascal Множества Операции над множествами. Результат операции – множество := - Присваивание
- 4. Структурированные типы в Pascal Pascal Множества Program CalcSet; var x,y,r : real; op : char; begin
- 5. Структурированные типы в Pascal Pascal Множества Program mnog_twolet; uses crt; Сonst text : string = 'рефракция
- 6. Структурированные типы в Pascal Pascal Множества program Glasn_Sogl; Type mnoj= set of 'A'..'я'; (* Задаем тип
- 8. Скачать презентацию
Слайд 2Структурированные типы в Pascal
Pascal
Множества
Примеры определения и задания множественных типов:
type Caps =
Структурированные типы в Pascal
Pascal
Множества
Примеры определения и задания множественных типов:
type Caps =
Colors = set of (RED, GREEN, BLUE);
Numbers = set of byte;
var oct : set of 0 .. 5;
type
digitchar = set of '0' .. '9';
digit = set of 0 .. 9;
var
s1, s2, s3 : digitchar;
s4, s5, s6 : digit;
begin
…………….
s1 := ['1', '2', '3'];
s2 := ['3', '2', '1'];
s3 := ['2', '3'];
s4 := [0 .. 3, 6];
s5 := [4, 5];
s6 := [3 .. 9];
……………..
end.
Тип "множество" задает набор всех возможных подмножеств входящих в него элементов (включая пустое). Если базовый тип, на котором строится множество имеет N элементов, то число подмножеств, входящих в это множество, равно 2N.
А переменная типа "множество" содержит одно конкретное подмножество значений множества.
Например:
var s : 1 .. 3; - переменная интервального типа, принимает значения: 1, 2 и 3,
а множество
var m : set of 1 .. 3; может принимать значения:
[ ] [1] [2] [3] [1, 2] [1, 3] [2, 3] [1, 2, 3]
Инициализация переменной-множества:
var index set of 1 .. 9 = [0, 2, 4, 6, 8,];
В Конструкторе в качестве элемента может быть выражение или диапазон: [R, а mod 15, 14] или [chr(65) .. chr(90)]
Pascal
И+ПРГ
Слайд 3Структурированные типы в Pascal
Pascal
Множества
Операции над множествами.
Результат операции – множество
:=
Структурированные типы в Pascal
Pascal
Множества
Операции над множествами.
Результат операции – множество
:=
+ - Объединение – элементы первого множества, дополненные элементами второго
* - Пересечение – элементы, общие для обоих множеств
- - Разность – элементы первого множества, которые не принадлежат второму
Результат операции – логический
= - Тождественность – true, когда все элементы обоих множества одинаковы (множества эквивалентны)
<> - Нетождественность – true, когда множества неэквивалентны
<= - Содержится в – true, если первое множество включено во второе
>= - Содержит – true, если второе множество включено во первое
in - Принадлежность – true, если первый (левый) операнд операции –выражение- принадлежит второму (правому) операнду -множеству (включен в него)
Процедуры
Include (s, i) - включает элемент i во множество s
Exclude (s, i) - исключает элемент i из множества s
Pascal
И+ПРГ
Слайд 4Структурированные типы в Pascal
Pascal
Множества
Program CalcSet;
var x,y,r : real; op :
Структурированные типы в Pascal
Pascal
Множества
Program CalcSet;
var x,y,r : real; op :
begin
repeat
write('Ввести op ->'); readln(op);
write('Ввести x, y -> '); readln(x,y);
if op in ['+','-','*','/',';']
then
begin case op of
'+' : r:=x+y;
'-' : r:=x-y;
'*' : r:=x*y;
'/' : r:=x/y;
';': end;
writeln (x:4:2,' ',op,' ',y:4:2,' =',' ',r:4:2)
end
else writeln('Ошибка ввода операции');
until op=';'
end.
Pascal
И+ПРГ
Пример: Программа – простой калькулятор на 4-е арифметических действия. Завершение работы – ввод символа ';'
Слайд 5Структурированные типы в Pascal
Pascal
Множества
Program mnog_twolet;
uses crt;
Сonst text : string = 'рефракция
Структурированные типы в Pascal
Pascal
Множества
Program mnog_twolet;
uses crt;
Сonst text : string = 'рефракция
Var partworld : set of char ; letter : char; i: integer;
begin
clrscr;
letter := text[1];
for i := 1 to length(text)+1 do
begin
if (text[i] <> ' ') and (i <= length(text))
then
begin world := world+text[i]; include (partworld, text[i+1]); end
else
begin if (letter in partworld)
then
writeln('Слово с повторяющейся первой буквой: ', world);
letter := text[i+1]; partworld := []; world := '';
end;
end;
end.
Дана последовательность русских слов (строчными буквами) разделенных пробелами (не менее 5-ти слов). Вывести на экран слова, в которых первая буква встречается ещё раз.
Pascal
И+ПРГ
Практическое занятие – ПЗ-1
Слайд 6Структурированные типы в Pascal
Pascal
Множества
program Glasn_Sogl;
Type mnoj= set of 'A'..'я'; (* Задаем
Структурированные типы в Pascal
Pascal
Множества
program Glasn_Sogl;
Type mnoj= set of 'A'..'я'; (* Задаем
var glasn, sogl: mnoj;
sr: string; (* строковая переменная sr хранит вводимый текст *)
i: byte; (* параметр цикла *)
g, s: byte; (* переменные накапливающие количество гласных и согласных букв
соответственно *)
begin
(* Задаем множества гласных букв перечислением, а множество согласных вычитанием из
всего алфавита гласных букв, мягкого и твердого знаков *)
glasn:=['A','a','O','o','E','e', 'Ё','ё', 'И','и', 'У','у', 'Ы','ы','Э','э','Я','я','Ю','ю'];
sogl:=['A'..'я'] – glasn – ['Ъ' ,'ъ' , 'Ь' , 'ь'];
write('Введите предложение: ');
readln(sr);
(* Обнуляем счетчики количества *)
g:=0;
s:=0;
(* Просматриваем все элементы предложения и ищем их в множествах glasn и sogl *)
For i:=1 to Length(sr) do begin
if sr[i] in glasn then g:=g+1;
if sr[i] in sogl then s:=s+1;
end;
writeln('В данном предложении ',g,' гласных и ',s,' согласных букв');
End.
Посчитать количество гласных и согласных букв в предложении.
Pascal
И+ПРГ
ПЗ-2