Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #define SETSIZE 8
- typedef unsigned int Set;
- void printSet(Set s);
- int main()
- {
- Set a,b;
- a = (1<<3)|(1<<4)|(1<<5)|(1<<7); // create set A
- printf("A = ");printSet(a); // 10111000
- b = (1<<1)|(1<<3)|(1<<5); // create set B
- printf("B= ");printSet(b);
- printf("A union B = ");printSet(a|b); // find union of And B
- printf("A intersect B = ");printSet(a&b); // find intersection of A and B
- printf("insert 6 into A."); // insert 6 into A
- a = (1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7);
- printf("A =");printSet(a); // print the new value of the set after element 6 is inserted
- printf("Is 3 an element of B? "); // to check if 3 is an element of B
- if ( b & (1<<3))
- printf("yes\n");
- else
- printf("No\n");
- return 0;
- }
- void printSet(Set s)
- {
- int j;
- printf("{ ");
- for (j=0; j<SETSIZE; j++)
- if ((1<<j)&s)printf("%d ",j);
- printf("}\n");
- }
- /*
- Example:
- write set A= {1,3} and insert element 2 into A:
- set A initially = 0000 0000
- so,
- (1<<1) will be 0000 0010
- (1<<3) will be 0000 1000
- then,
- (1<<1) | (1<<3) is 0000 1010
- to insert:
- (1<<2) | A is 0000 1110
- */
Advertisement
Add Comment
Please, Sign In to add comment