Разделы презентаций


МНОЖИНИ

Содержание

Множини належать до порівняно рідко використовуваних засобів мови Pascal. Однак у ряді випадків використання множин дозволяє помітно підвищити компактність і наочність програм. Множина (set) – це структурований тип даних, елементи якого

Слайды и текст этой презентации

Слайд 1МНОЖИНИ

МНОЖИНИ

Слайд 2 Множини належать до порівняно рідко використовуваних засобів мови Pascal. Однак

у ряді випадків використання множин дозволяє помітно підвищити компактність і

наочність програм.
Множина (set) – це структурований тип даних, елементи якого складаються зі скінченого набору до 256 даних одного типу, значення яких записують через кому в квадратних дужках.
Множини належать до порівняно рідко використовуваних засобів мови Pascal. Однак у ряді випадків використання множин дозволяє помітно

Слайд 3 Потрібно звернути увагу на дві обставини. По-перше, всі значення базового

типу, що утворять конкретні значення множинного типу, повинні бути РІЗНІ.

По-друге, порядок "розташування" елементів у множині ніяк НЕ ФІКСУЄТЬСЯ. Це відповідає прийнятому в математиці трактуванню множини як безповторної невпорядкованої сукупності об'єктів.
Потрібно звернути увагу на дві обставини. По-перше, всі значення базового типу, що утворять конкретні значення множинного типу,

Слайд 4 Turbo Pascal допускає як базові типи для множини дискретні типи

не більш ніж з 256 різними значеннями, причому (для цілих

типів) ці значення повинні лежати в діапазоні від 0 до 255. Таким обмеженням задовольняють тільки стандартні типи byte і char, перелічувані типи, а також обмежені типи, утворені з них.
Turbo Pascal допускає як базові типи для множини дискретні типи не більш ніж з 256 різними значеннями,

Слайд 5 Множинний тип задається за допомогою двох службових слів - set

і of - і наступного за ним базового типу.
Наприклад:


type Digits = set of 1..5;
var S : Digits;
Множинний тип задається за допомогою двох службових слів - set і of - і наступного за ним

Слайд 6 Змінна S, визначена в прикладі, може приймати значення, що складаються

з наступних сукупностей цілих чисел:

1
1, 2
1, 2 ,

3
1, 5
1, 3, 4, 5

1, 2, 3, 4, 5
Змінна S, визначена в прикладі, може приймати значення, що складаються з наступних сукупностей цілих чисел: 				1		1, 2

Слайд 7 В Pascal-програмі допускаються явні зображення значень множинних типів. Зображення множини

(або конструктор множини) будується зі списку елементів множини, розділених комами.

Весь список береться у квадратні дужки, наприклад:
[1,2,5]
[Red,Yellow]
В Pascal-програмі допускаються явні зображення значень множинних типів. Зображення множини (або конструктор множини) будується зі списку елементів

Слайд 8 Як елементи в зображенні множини допускаються вирази, тип яких повинен

збігатися з базовим типом множини. Крім того, можна вказувати діапазони

значень, що складаються із пари граничних значень, розділених знаком .. (дві крапки); наприклад, два зображення множин [1..3,5] і [1,2,3,5] еквівалентні.
Порожня множина зображується двома квадратними дужками: [ ].
Як елементи в зображенні множини допускаються вирази, тип яких повинен збігатися з базовим типом множини. Крім того,

Слайд 9 Необхідно пам'ятати, що множина - це безповторна сукупність елементів, так

що, наприклад, наступні три зображення позначають одну й ту ж

множину:
[1,2,3]
[1,1,2,3]
[1,2,3,2,2,3,1].
Необхідно пам'ятати, що множина - це безповторна сукупність елементів, так що, наприклад, наступні три зображення позначають одну

Слайд 10Наведемо ще приклад опису множин.
type SetOfChar= set of char;
Digits=

set of 0..100;
var MyChars : SetOfChar;
MyDig1,MyDig2 : Digits;


Begin

MyChars := [ ' a ' . . ' z ', ' 0 ' . . ' 9 ', ' - ' ] ;
MyDig1 := [];
MyDig2 := MyDig1;
MyDig1 := [x..x+10,0,y-1,y+1];

Наведемо ще приклад опису множин. type SetOfChar= set of char;		Digits= set of 0..100; var MyChars : SetOfChar;

Слайд 11Операції над множинами
Для множинних типів існують наступні групи операцій:
теоретико-множинне

об'єднання, перетин і віднімання множин;
перевірка приналежності елемента множині;
перевірка

на рівність і нерівність множин;
перевірка на входження (приналежність) однієї множини в іншу.
Операції над множинами		Для множинних типів існують наступні групи операцій: теоретико-множинне об'єднання, перетин і віднімання множин; перевірка приналежності

Слайд 12 Розглянемо докладніше перера-ховані операції.
1.Об'єднання, перетин та віднімання множин. Ці

операції позначаються, відповідно, символами '+', '*' і '-' і означають

традиційні дії із множинами, прийняті в математиці.
Розглянемо докладніше перера-ховані операції. 		1.Об'єднання, перетин та віднімання множин. Ці операції позначаються, відповідно, символами '+', '*' і

Слайд 13 * - перетин двох множин: результат містить елементи,

спільні для обох множин.
+ - об'єднання двох множин:

результат містить елементи першої множини, доповнені відсутніми елементами із другої множини.
- - різниця множин: результат містить елементи з першої множини, які не належать другій.
*  - перетин двох множин: результат містить елементи, спільні для обох множин. +  -

Слайд 14 Наступний приклад ілюструє наведені операції (у правому стовпчику показана множина

- результат операції):

[1,2] + [3,4]

[1,2,3,4]
[1..10] + [5..15] [1. .15]
[1..10] * [5..15] [5. .10]
[1,2] * [3,4] []
[1..10] - [5..15] [1. .4]
Наступний приклад ілюструє наведені операції (у правому стовпчику показана множина - результат операції): [1,2] + [3,4]

Слайд 152. Перевірка приналежності множині. Ця логічна операція позначається службовим словом

in. Правий операнд повинен бути множиною, лівий - значенням базового

типу множини. Результат true, якщо значення входить у множину, і false, якщо не входить. Наприклад:
2 in [1..10,12] true
5 in [1,2,7,10] false
2. Перевірка приналежності множині. Ця логічна операція позначається службовим словом in. Правий операнд повинен бути множиною, лівий

Слайд 16 Операцію перевірки приналежності зручно використовувати для виключення більш складних перевірок.

Наприклад, оператор виду
if (ch='a') or (ch='b') or (ch='x') or

(ch='y')
then S
може бути переписаний у набагато більш компактній і наочній формі:
if ch in ['а','b','х','у'] then S
Помітимо, що другий варіант більш ефективний з погляду швидкодії.
Операцію перевірки приналежності зручно використовувати для виключення більш складних перевірок. Наприклад, оператор виду if (ch='a') or (ch='b')

Слайд 17 3. Перевірки на рівність, нерівність і включення множин. Ці бінарні

операції також мають звичайний теоретико-множинний зміст і позначаються наступними знаками:


= рівність (збіг) двох множин
<> нерівність множин
<= перевірка на входження множини з лівого операнда в множину з правого операнда
>= перевірка на входження множини із правого операнда в множину з лівого операнда
3. Перевірки на рівність, нерівність і включення множин. Ці бінарні операції також мають звичайний теоретико-множинний зміст і

Слайд 18 Результатом всіх цих операцій буде логічне значення true або false

залежно від успіху перевірки. Нижче наводяться приклади використання цих операцій.


[1,2,3] = [1,2] false
[1,2,3] >= [1,2] true
[S] <= [1..10] true, якщо S - ціле число з діапазону 1..10
[1,2,3] <> [1,2,2] true
Результатом всіх цих операцій буде логічне значення true або false залежно від успіху перевірки. Нижче наводяться приклади

Слайд 19Приклад: підрахувати кількість цифр в рядку використовуючи множини.
Program mn1;
Const cyfra=[‘0’,’1’,‘2’,’3’,‘4’,’5’,‘6’,’7’,

‘8’,’9’];
Var s:string; i,k:word;
Begin
Writeln(‘Enter string’); readln(s);
k:=0;
For i:=1 to length(s) do
if

s[i] in cyfra then k:=k+1;
Writeln(‘string contens’,k:3,’cyfr’);
End.
Приклад: підрахувати кількість цифр в рядку використовуючи множини.Program mn1;Const cyfra=[‘0’,’1’,‘2’,’3’,‘4’,’5’,‘6’,’7’, ‘8’,’9’];Var s:string;  i,k:word;BeginWriteln(‘Enter string’); readln(s);k:=0;For i:=1

Слайд 20Program mn2;
Var cyfra: set of char;
s:string; i,k:word;
Begin
cyfra=[‘0’,’1’,‘2’,’3’,‘4’,’5’,‘6’,’7’, ‘8’,’9’];
Writeln(‘Enter string’);

readln(s);
k:=0;
For i:=1 to length(s) do
if s[i] in cyfra then k:=k+1;
Writeln(‘string

contens’,k:3,’cyfr’);
End.

Program mn2;Var cyfra: set of char;s:string;  i,k:word;Begincyfra=[‘0’,’1’,‘2’,’3’,‘4’,’5’,‘6’,’7’, ‘8’,’9’];Writeln(‘Enter string’); readln(s);k:=0;For i:=1 to length(s) do	if s[i] in

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика