Контрольная работа: Побудова скінченних множин
Название: Побудова скінченних множин Раздел: Рефераты по математике Тип: контрольная работа |
Міністерство освіти і науки України Полтавський національний технічний університет імені Юрія Кондратюка Факультет інформаційних та телекомунікаційних технологій і систем Кафедра комп’ютерних та інформаційних технологій і систем Розрахунково-графічна робота з дисциплін "Основи дискретної математики" та "Основи програмування та алгоритмічні мови" Виконав: Студент групи 101-ТН Селін Ігор Керівник: д.т.н. Ляхов Олександр Логвинович
Полтава 2010 Постановка задачі УМОВА ЗАДАЧІ: Дано скінчені множини А, В, С. Побудувати множини , , , , , Множина - це деяка визначена сукупність елементів чи об’єктів. Списковий спосіб подання множини - перелік усіх елементів у фігурних дужках. Прямим (або декартовим) добутком множини А і Б називають множину всіх упорядкованих пар елементів (а, б), з яких перший належить множині А, а другий - множині Б. Скінченна множина - множина, кількість елементів якої скінченна, тобто існує натуральне числоk , що є числом елементів цієї множини. Розв’ язання задачі. Маємо три множини - A,B,C. Кожна з них містить по 5 елементів. Для наглядного представлення покажемо приклад декартового добутку, в якому взято три двохелементні множини з випадковими елементами: A={0,1} B={1,1} C={0,0} AxBxC={a1,b1,c1},{a2,b1,c1},{a1,b1,c2},{a1,b2,c1},{a1,b2,c2},{a2,b2,c2}= ={0,1,0},{1,1,0},{0,1,0},{0,1,0},{0,1,0}{1,1,0}
Алгоритм задачі. Для винання цієї задачі, ми взяли вхідні дані, що являють собою три множини по 5 елементів. Так як декартовий добуток являє собою пари елементів із кожної множини, на потрібно перерахувати ці пари. В нашому випадку трійки значень. Для цьго використаємо 3 цикли, кожен яких буде перелічувати множину. Комбінації множин я змінив до вказаних в умові. За один прохід кожного цикла виводиться 1 добуток з кожної заданої комбінації. Реалізація програми
#include <iostream> using namespace std; int a [10] ={1,1,1,0,0}; int b [10] ={0,0,1,0,1}; int c [10] ={1,0,1,1,0}; int abc [10] [6] ; int main () { cout<<" AxBxC "<<"| CxBxA "<<"| CxAxB "<<"| CxCxB "<<"| AxBxA "<<"| CxBxC "<< endl; for (int x=0; x<5; x++) for (int y=0; y<5; y++) for (int z=0; z<5; z++) { cout<<"{"<<a [x] <<","<<b [y] <<","<<c [z] <<"}"; cout<<"| {"<<c [x] <<","<<b [y] <<","<<a [z] <<"}"; cout<<"| {"<<c [x] <<","<<a [y] <<","<<b [z] <<"}"; cout<<"| {"<<c [x] <<","<<c [y] <<","<<b [z] <<"}"; cout<<"| {"<<a [x] <<","<<b [y] <<","<<a [z] <<"}"; cout<<"| {"<<c [x] <<","<<b [y] <<","<<c [z] <<"}"<<endl; } cout<<endl; cin. get (); cin. get (); return 0; }
Початкові дані:
A={1,1,1,0,0} B={0,0,1,0,1} C={1,0,1,1,0}
Демонстрац ія програми:
|