SET OPERATIONS
- The union of two sets is the set containing all of the elements from both of those sets.
- Written A\cup B and defined A\cup B = \{x \mid x\in A\vee x\in B\}\,.
- For example, \{1,2,3,4\}\cup\{3,4,5,6\} = \{1,2,3,4,5,6\}\,\\ \mathbf{R} = \mathbf{Q} \cup \overline{\mathbf{Q}}\,.
- The intersection of two sets is the set containing elements which are in both of those sets.
- Written A\cap B and defined A\cap B = \{x \mid x\in A\wedge x\in B\}\,\\ \mathbf{Q} \cap \overline{\mathbf{Q}}=\emptyset\,.
- For example, \{1,2,3,4\}\cap\{3,4,5,6\} = \{3,4\}\,.
- The difference between two sets is the set of values in one but not the other: A-B = \{x \mid x\in A\text{ and } x\notin B\}\,.
- For example, \{1,2,3,4\}-\{3,4,5,6\} = \{1,2\}\,\\ \overline{\mathbf{Q}} = \mathbf{R}-\mathbf{Q} \,.
- Also sometimes written A\setminus B.
SET OPERATIONS PROGRAM
#include<stdio.h>
#include<conio.h>
void unio(int a[10],int b[10],int c[10],int n,int m);
void inter(int a[10],int b[10],int c[10],int n,int m);
int diff(int a[10],int b[10],int c[10],int n,int m,int r);
void main()
{
int a[10]={0},b[10]={0},c[15]={0},c1[15]={0},c2[15]={0};int m,n,i,p,r,s,n1,n2;
clrscr();
printf("Enter no of elements for set a\n");
scanf("%d",&n);
printf("Enter elements for set a\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
printf("Enter no of elements for set b\n");
scanf("%d",&m);
printf("Enter elements for set b\n");
for(i=0;i<m;i++)
{
scanf("%d",&b[i]);
}
do
{
printf("\n1. 1 for union\n 2 for intersection\n 3 for a-b and b-a\n 4 for semmitric diff ");
scanf("%d",&p);
switch(p)
{
case 1: unio(a,b,c,n,m);
break;
case 2:inter(a,b,c,n,m);
break;
case 3:diff(a,b,c,n,m,r);
diff(b,a,c,m,n,s);
break;
case 4: n1=diff(a,b,c1,n,m,r);
n2= diff(b,a,c2,m,n,s);
unio(c1,c2,c,n1,n2);
break;
}
}
while(p!=5);
getch();
}
void unio(int a[10],int b[10],int c[10],int n,int m)
{
int i,k=0,j,flag;
for(i=0;i<n;i++)
{
c[k]=a[i];
k++;
}
for(i=0;i<n;i++)
{
flag=0;
for(j=0;j<m;j++)
{
if(b[i]==a[j])
{
flag=1;
break;
}
}
if(flag==0)
{
c[k]=b[i];
k++;
}
}
printf("union is");
for(i=0;i<k;i++)
{
printf("%d", c[i]);
}
}
void inter(int a[10],int b[10],int c[10],int n,int m)
{
int i,j,k=0,flag ;
for(i=0;i<n;i++)
{ flag=0;
for(j=0;j<m;j++)
{
if(a[i]==b[j])
{
flag=1;
break;
}
}
if(flag== 1)
{
c[k]=a[i];
k++;
}
}
printf("intersection is");
for(i=0;i<k;i++)
{
printf("%d", c[i]);
}
}
int diff(int a[10],int b[10],int c[10],int n,int m,int r)
{
int i,j,k=0,flag=0;
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{ flag=0;
if(a[i]==b[j])
{
flag=1;
break;
}
}
if(flag==0)
{
c[k]=a[i];
k++;
}
}
printf("diff is");
for(i=0;i<k;i++)
{
printf("%d",c[i]);
}
return k;
}
No comments:
Post a Comment
If you have any problems related to solutions or any concept please let me know.