Sistema_operatsii_774_nad_mnozhestvami

Содержание

Слайд 2

Примеры конечных множеств

N – размер универса

универс

Подмножество А

Подмножество А

Подмножество А

Подмножество В

Примеры конечных множеств N – размер универса универс Подмножество А Подмножество А Подмножество А Подмножество В

Слайд 3

Размер универса N = 100

Подмножество А:
1, 5, 20, 7, 11,

Размер универса N = 100 Подмножество А: 1, 5, 20, 7, 11,
75, 41, 50, 80

Подмножество В:
20, 11, 45, 13, 60, 90, 7, 10

Слайд 4

Размер универса N = 100

Подмножество А:
1, 5, 20, 7, 11,

Размер универса N = 100 Подмножество А: 1, 5, 20, 7, 11,
75, 41, 50, 80

Подмножество В:
20, 11, 45, 13, 60, 90, 7, 10

Подмножество А ᴜ В:
1, 5, 7, 10, 11, 13, 20, 41, 45, 50, 60, 75, 80, 90

Слайд 5

Размер универса N = 100

Подмножество А:
1, 5, 20, 7, 11,

Размер универса N = 100 Подмножество А: 1, 5, 20, 7, 11,
75, 41, 50, 80

Подмножество В:
20, 11, 45, 13, 60, 90, 7, 10

Подмножество А ∩ В: 7, 11,20

Слайд 6

Размер универса N = 100

Подмножество А:
1, 5, 20, 7, 11,

Размер универса N = 100 Подмножество А: 1, 5, 20, 7, 11,
75, 41, 50, 80

Подмножество В:
20, 11, 45, 13, 60, 90, 7, 10

Подмножество ~А:
2, 3, 6, 8, 9, 10, 12, …,19, 21, …, 40, 42, …, 49, 51, …, 74, …,79, 81, …, 100

Слайд 7

Постановка задачи

Разработать структуру хранения множеств
Организовать выполнение операций над подмножествами одного универса в

Постановка задачи Разработать структуру хранения множеств Организовать выполнение операций над подмножествами одного
соответствии с выбранной структурой хранения
Объединение множеств
Пересечение множеств
Определение дополнения
Найти оценки сложности по времени и памяти

Слайд 8

Вариант 1
Структура хранения –
массив номеров элементов, входящих в подмножество
тип массива целый
размер

Вариант 1 Структура хранения – массив номеров элементов, входящих в подмножество тип
массива - ??? N
сложность по памяти - ??? N*4 байт
Сложность по времени - квадратичная

Слайд 9

Вариант 1
Структура хранения – массив номеров элементов

Сложность по времени
1. Операция объединения:

Вариант 1 Структура хранения – массив номеров элементов Сложность по времени 1. Операция объединения:

Слайд 10

Вариант 1
Структура хранения – массив номеров элементов

Сложность по времени
1. Операция пересечения:

Вариант 1 Структура хранения – массив номеров элементов Сложность по времени 1. Операция пересечения:

Слайд 11

Вариант 1
Структура хранения – массив номеров элементов

Сложность по времени
1. Операция дополнения:

Вариант 1 Структура хранения – массив номеров элементов Сложность по времени 1. Операция дополнения:

Слайд 12

Технология разработки и тестирования класса

1.Создается проект в консольном приложении
2.Добавляется заготовка класса

#include ….
…..
Int

Технология разработки и тестирования класса 1.Создается проект в консольном приложении 2.Добавляется заготовка
main( …)
{
}

Class Myclass
{
}

Слайд 13

Технология разработки и тестирования класса

3.Класс подключается к главной программе

#include ….
…..
Int main( …)
{
}

Class

Технология разработки и тестирования класса 3.Класс подключается к главной программе #include ….
Myclass
{
}

Слайд 14

Технология разработки и тестирования класса

3.В классе прописываются поля (свойства класса)
4.Обязательные методы

#include

Технология разработки и тестирования класса 3.В классе прописываются поля (свойства класса) 4.Обязательные
….
…..
Int main( …)
{
}

Class Myclass
{
}

Слайд 15

Технология разработки и тестирования класса

3.В классе прописываются поля (свойства класса)
4.Обязательные методы:
-Конструктор(ы)
-Деструктор
-Конструктор копирования
-Перегрузка

Технология разработки и тестирования класса 3.В классе прописываются поля (свойства класса) 4.Обязательные
оператора присваивания
5.В главной программе объявляются объекты нового класса для тестирования написанных методов

Слайд 16

Технология разработки и тестирования класса

6. Параллельно каждый добавленный в класс метод должен

Технология разработки и тестирования класса 6. Параллельно каждый добавленный в класс метод
быть протестирован, для этого вызывается в главной программе

#include ….
…..
Int main( …)
{
}

Class Myclass
{
}

Слайд 17

Задание 1.
Написать и протестировать класс Set, обеспечивающий работу с множествами:
Ввод множества
Объединение 2х

Задание 1. Написать и протестировать класс Set, обеспечивающий работу с множествами: Ввод
множеств
Пересечение 2х множеств
Дополнение к первому множеству
Вывод множества
Структура хранения – массив номеров элементов

Слайд 18

Вариант 2
Структура хранения – битовая строка, отображенная на память компа
Пример. Размер универса

Вариант 2 Структура хранения – битовая строка, отображенная на память компа Пример.
– 36
Подмножество А: 6, 9, 16, 19, 20, 35

Номер элемента универса

Признак принадлежности элемента к подмножеству,
1-принадлежит, 0-отсутствует

Слайд 19

Вариант 2
Структура хранения – битовая строка, отображенная на память компа
Пример. Размер универса

Вариант 2 Структура хранения – битовая строка, отображенная на память компа Пример.
– 36
Подмножество В: 2, 7, 12, 13, 22, 23, 24, 35

Слайд 20

Вариант 2
Структура хранения – битовая строка, отображенная на память компа
Пример. Размер универса

Вариант 2 Структура хранения – битовая строка, отображенная на память компа Пример.
– 36

mem[0]

mem[1]

mem[2]

mem[3]

mem[4]

Отображение битовой строки подмножества А на массив mem типа char

Память компа

Битовая строка

Слайд 21

Вариант 2
Структура хранения – битовая строка, отображенная на память компа
Пример. Размер универса

Вариант 2 Структура хранения – битовая строка, отображенная на память компа Пример.
– 36

mem[0]

mem[1]

mem[2]

Отображение битовой строки подмножества А на массив mem типа int16

Слайд 22

Вариант 2
Структура хранения – битовая строка, отображенная на память компа
Пример. Размер универса

Вариант 2 Структура хранения – битовая строка, отображенная на память компа Пример.
– 36

mem[0]

mem[1]

Отображение битовой строки подмножества А на массив mem типа int32

Слайд 23

Вариант 2

массив mem типа int32

массив mem типа int16

массив mem типа char

Вариант 2 массив mem типа int32 массив mem типа int16 массив mem типа char

Слайд 24

Вариант 2
Расположение 35 элемента

массив mem типа int32

массив mem типа int16

массив mem типа

Вариант 2 Расположение 35 элемента массив mem типа int32 массив mem типа
char

mem[1]

mem[2]

mem[4]

лишние

лишние

Слайд 25

Вариант 2
Размер выделяемой памяти

массив mem типа int32 - size=2, количество байт 8

массив

Вариант 2 Размер выделяемой памяти массив mem типа int32 - size=2, количество
mem типа int16- size=3, количество байт 6

массив mem типа char – size=5, количество байт 5

Слайд 26

Задание 2.
Исходные данные:
Тип массива
Размер универса
Номер элемента множества
Определить:
Размер выделяемой памяти в байтах
Номер массива

Задание 2. Исходные данные: Тип массива Размер универса Номер элемента множества Определить:
mem, содержащий заданный элемент множества
Номер бита, содержащий заданный элемент множества

Слайд 27

Оценка сложности по памяти

Для произвольного N определяем по формуле

size=N/(sizeof(тип)*8)+1
Число байт = size*

Оценка сложности по памяти Для произвольного N определяем по формуле size=N/(sizeof(тип)*8)+1 Число байт = size* sizeof(тип)
sizeof(тип)

Слайд 28

Вариант 2
Структура хранения – массив, содержащий битовую строку

Сложность по времени
1. Операция

Вариант 2 Структура хранения – массив, содержащий битовую строку Сложность по времени 1. Операция объединения:
объединения:

Слайд 29

Вариант 2
Структура хранения – массив, содержащий битовую строку

Сложность по времени
1. Операция

Вариант 2 Структура хранения – массив, содержащий битовую строку Сложность по времени 1. Операция пересечения:
пересечения:

Слайд 30

Вариант 2
Структура хранения – массив, содержащий битовую строку

Сложность по времени
1. Операция

Вариант 2 Структура хранения – массив, содержащий битовую строку Сложность по времени 1. Операция дополнения:
дополнения:

Слайд 31

ПримерРазмер универса – 36
Подмножество А: 6, 9, 16, 19, 20, 35
Подмножество

ПримерРазмер универса – 36 Подмножество А: 6, 9, 16, 19, 20, 35
В: 2, 7, 12, 13, 22, 23, 24, 35

Подмножество АᴜВ: 2,6,7,9,12,13,16,19,20,22,23,24,35

Слайд 32

Операция “<<“ «сдвиг влево») и “>>” («сдвиг вправо» )

Пример 1. Int16 A=

Операция “ >” («сдвиг вправо» ) Пример 1. Int16 A= 1 Результатом
1<<2
Результатом операции А=4

Пример 2. 910=10012 после выполнения операции int B = 9 << 5

Слайд 33

Операция “(«сдвиг влево» <<“) и “>>” ( «сдвиг вправо»)

Пример 3. Пусть есть

Операция “(«сдвиг влево» >” ( «сдвиг вправо») Пример 3. Пусть есть элемент
элемент целого массива mem[i], который в двоичном представлении имеет вид

после выполнения операции int B =mem[i]<< 4 будет иметь вид

При этом единица из 29 разряда будет потеряна

Слайд 34

Задание на лабораторную работу
1. На WindousForm разработать интерфейс

После установки размера универса открываются

Задание на лабораторную работу 1. На WindousForm разработать интерфейс После установки размера универса открываются остальные поля
остальные поля

Слайд 36

Структура проекта с использованием WindousForm

Главная программа формируется автоматически при создании проекта

Form.h

Структура проекта с использованием WindousForm Главная программа формируется автоматически при создании проекта
формируется и дополняется автоматически

вызов

Дополнения при появлении на форме новых инструментов

TSet

TBitField

вызов

вызов

Вызов при наступлении соответствующего события

Слайд 37

Задание на лабораторную работу
2. Реализовать структуру классов

TBitField

TSet

Задание на лабораторную работу 2. Реализовать структуру классов TBitField TSet

Слайд 38

Задание на лабораторную работу
3. В классе TBitField должны быть поля
-массив с битовой

Задание на лабораторную работу 3. В классе TBitField должны быть поля -массив
строкой
-размер массива
Приватные методы по номеру элемента множества
-вычисление номера бита
-вычисление номера элемента массива

Слайд 39

Задание на лабораторную работу
4. В классе TBitField кроме обязательных должны быть реализованы

Задание на лабораторную работу 4. В классе TBitField кроме обязательных должны быть
методы:
- добавить элемент
удалить элемент
перегружены операции «и», «или», «отрицание»
преобразование содержимого массива в строку с параметром размера универса

Слайд 40

Задание на лабораторную работу
5. В классе TSet должны быть поля
- объект класса

Задание на лабораторную работу 5. В классе TSet должны быть поля -
TBitField
-размер универса

Слайд 41

Задание на лабораторную работу
6. В классе TSet кроме обязательных должны быть реализованы

Задание на лабораторную работу 6. В классе TSet кроме обязательных должны быть
методы:
- добавить элемент с контролем
удалить элемент
перегружены операции «и», «или», «отрицание»
ввод подмножества с контролем
возврат строки с номерами элементов
Имя файла: Sistema_operatsii_774_nad_mnozhestvami.pptx
Количество просмотров: 25
Количество скачиваний: 0