set operations

                      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.

Copyright (c) 2020 Custom Programs All Right Reserved

Pages