Контрольная работа: Побудова скінченних множин
Так як декартовий добуток являє собою пари елементів із кожної множини, на потрібно перерахувати ці пари. В нашому випадку трійки значень. Для цьго використаємо 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;
}