#include <stdio.h>
#define U_SIZE 11 // елементи 1..10
void printSet(int set[]) {
for (int i = 1; i <= 10; i++)
}
void intersect(int A[], int B[], int R[]) {
for (int i = 1; i <= 10; i++)
R[i] = A[i] && B[i];
}
void uni(int A[], int B[], int R[]) {
for (int i = 1; i <= 10; i++)
R[i] = A[i] || B[i];
}
void symdiff(int A[], int B[], int R[]) {
for (int i = 1; i <= 10; i++)
R[i] = (A[i] != B[i]);
}
int main() {
int A[U_SIZE] = {0};
int B[U_SIZE] = {0};
int C[U_SIZE] = {0};
int a_vals[] = {1,2,3,5,6};
int b_vals[] = {2,3,4,8,9};
int c_vals[] = {3,4,5};
for (int i = 0; i < 5; i++) A[a_vals[i]] = 1;
for (int i = 0; i < 5; i++) B[b_vals[i]] = 1;
for (int i = 0; i < 3; i++) C[c_vals[i]] = 1;
int AC[U_SIZE] = {0};
int AC_sym_B[U_SIZE] = {0};
int BC[U_SIZE] = {0};
int result2[U_SIZE] = {0};
// a) (A ∩ C) Δ B
intersect(A, C, AC);
symdiff(AC, B, AC_sym_B);
// b) A ∪ (B ∩ C)
intersect(B, C, BC);
uni(A, BC, result2);
printSet(AC_sym_B);
printSet(result2);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIFVfU0laRSAxMSAgIC8vINC10LvQtdC80LXQvdGC0LggMS4uMTAKCnZvaWQgcHJpbnRTZXQoaW50IHNldFtdKSB7CiAgICBwcmludGYoInsgIik7CiAgICBmb3IgKGludCBpID0gMTsgaSA8PSAxMDsgaSsrKQogICAgICAgIGlmIChzZXRbaV0pIHByaW50ZigiJWQgIiwgaSk7CiAgICBwcmludGYoIn1cbiIpOwp9Cgp2b2lkIGludGVyc2VjdChpbnQgQVtdLCBpbnQgQltdLCBpbnQgUltdKSB7CiAgICBmb3IgKGludCBpID0gMTsgaSA8PSAxMDsgaSsrKQogICAgICAgIFJbaV0gPSBBW2ldICYmIEJbaV07Cn0KCnZvaWQgdW5pKGludCBBW10sIGludCBCW10sIGludCBSW10pIHsKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IDEwOyBpKyspCiAgICAgICAgUltpXSA9IEFbaV0gfHwgQltpXTsKfQoKdm9pZCBzeW1kaWZmKGludCBBW10sIGludCBCW10sIGludCBSW10pIHsKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IDEwOyBpKyspCiAgICAgICAgUltpXSA9IChBW2ldICE9IEJbaV0pOwp9CgppbnQgbWFpbigpIHsKCiAgICBpbnQgQVtVX1NJWkVdID0gezB9OwogICAgaW50IEJbVV9TSVpFXSA9IHswfTsKICAgIGludCBDW1VfU0laRV0gPSB7MH07CgogICAgaW50IGFfdmFsc1tdID0gezEsMiwzLDUsNn07CiAgICBpbnQgYl92YWxzW10gPSB7MiwzLDQsOCw5fTsKICAgIGludCBjX3ZhbHNbXSA9IHszLDQsNX07CgogICAgZm9yIChpbnQgaSA9IDA7IGkgPCA1OyBpKyspIEFbYV92YWxzW2ldXSA9IDE7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IDU7IGkrKykgQltiX3ZhbHNbaV1dID0gMTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgMzsgaSsrKSBDW2NfdmFsc1tpXV0gPSAxOwoKICAgIGludCBBQ1tVX1NJWkVdID0gezB9OwogICAgaW50IEFDX3N5bV9CW1VfU0laRV0gPSB7MH07CiAgICBpbnQgQkNbVV9TSVpFXSA9IHswfTsKICAgIGludCByZXN1bHQyW1VfU0laRV0gPSB7MH07CgogICAgLy8gYSkgKEEg4oipIEMpIM6UIEIKICAgIGludGVyc2VjdChBLCBDLCBBQyk7CiAgICBzeW1kaWZmKEFDLCBCLCBBQ19zeW1fQik7CgogICAgLy8gYikgQSDiiKogKEIg4oipIEMpCiAgICBpbnRlcnNlY3QoQiwgQywgQkMpOwogICAgdW5pKEEsIEJDLCByZXN1bHQyKTsKCiAgICBwcmludGYoImEpIChBIOKIqSBDKSDOlCBCID0gIik7CiAgICBwcmludFNldChBQ19zeW1fQik7CgogICAgcHJpbnRmKCJiKSBBIOKIqiAoQiDiiKkgQykgPSAiKTsKICAgIHByaW50U2V0KHJlc3VsdDIpOwoKICAgIHJldHVybiAwOwp9Cg==