/* PROBLEM STATEMENT : WRITE A C PROGRAM TO PERFORM FOLLOWING OPERATIONS
ON CHARACTER ARRAY
1-UNION
2-INTERSECTION
3-DIFFERENCE
4-SYMMETRIC DIFFERENCE
*/
#include
#include
#include
void main()
{
char a[10], b [10], c[20];
int i,j,k,m,n,ch;
char h;
clrscr();
printf("Enter length of set 1:");
scanf("%d", &n);
printf("Enter length of set 2:");
scanf("%d", &m);
printf("Enter elements of set 1:");
for(i=0;i
flushall();
scanf("%c",&a[i]);
}
printf("Enter elements of set 2:");
for(j=0;j
flushall();
scanf("%c",&b[j]);
}
do
{
printf("\n\nWhich operation you want to perform?");
printf("\n1.Union");
printf("\n2.Intersection");
printf("\n3.Difference");
printf("\n4.Symmetric difference");
printf("\n\nEnter the choice:\t");
scanf("%d",&ch);
switch(ch)
{
case 0:
exit(0);
break;
case 1: //UNION
k=0;
for(i=0;i
c[k]=a[i];
}
for(i=0;i
for(j=0;j
if(a[j]==b[i])
break;
}
if(j==n)
{
c[k]=b[i];
k++;
}
}
for(i=0;i
printf("%c",c[i]);
}
getch();
break;
/*---------------------------------------------------------------------------*/
case 2: //INTERSECTION
k=0;
for(i=0;i
for(j=0;j
if(a[j]==b[i])
break;
}
if(j!=n)
{
c[k]=b[i];
k++;
}
}
for(i=0;i
printf("%c",c[i]);
}
getch();
break;
/*---------------------------------------------------------------------------*/
case 3: //DIFFERENCE
k=0;
for(i=0;i
for(j=0;j
if(a[j]==b[i])
break;
}
if(j==m)
{
c[k]=a[i];
k++;
}
}
for(i=0;i
printf("%c",c[i]);
}
getch();
break;
/*-----------------------------------------------------------------------------*/
case 4: //SYMMETRIC DIFFERENCE
k=0;
for(i=0;i
for(j=0;j
if(a[j]==b[i])
break;
}
if(j==m)
{
c[k]=a[i];
k++;
}
}
for(i=0;i
for(j=0;j
if(a[j]==b[i])
break;
}
if(j==n)
{
c[k]=b[i];
k++;
}
}
for(i=0;i
break;
}
} while(ch!=0);
getch();
}
/*-------------------------------------------------------------------------*/
No comments:
Post a Comment