khushitshah

exp5

Dec 22nd, 2020
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.92 KB | None | 0 0
  1. #include<stdio.h>
  2. #include <iostream>
  3.  
  4. using namespace std;
  5.  
  6. int printIntersection(int arr1[], int arr2[],int arr3[], int m, int n,int d)
  7. {
  8.     int i = 0, j = 0;
  9.     while (i < m && j < n) {
  10.        
  11.         if (arr1[i] < arr2[j])
  12.             i++;
  13.         else if (arr2[j] < arr1[i])
  14.             j++;
  15.         else {
  16.            arr3[d++]=arr2[j++];
  17.             i++;
  18.         }
  19.     }
  20.     return d;
  21.    
  22. }
  23.  
  24. int printUnion(int arr1[],int arr2[],int arr4[],int m,int n,int c)
  25. {
  26.     int i = 0, j = 0;
  27.     while (i < m && j < n) {
  28.         if (arr1[i] < arr2[j])
  29.             arr4[c++]=arr1[i++];
  30.         else if (arr2[j] < arr1[i])
  31.             arr4[c++]=arr2[j++];
  32.         else {
  33.             arr4[c++]=arr2[j++];
  34.             i++;
  35.         }
  36.     }
  37.  
  38.    
  39.     while (i < m)
  40.         arr4[c++]=arr1[i++];
  41.     while (j < n)
  42.         arr4[c++]=arr2[j++];
  43.     return c;
  44. }
  45. void printDifference(int arr3[],int arr4[],int arr5[],int m,int n,int k){
  46.         int p,flag,i=0,j=0;
  47.         k=0;
  48.         for(i=0;i<m;i++)
  49.         {
  50.             flag=1;
  51.             for(j=0;j<n;j++)
  52.             {
  53.                 if(arr3[i]==arr4[j])
  54.                 {
  55.                     flag=0;
  56.                     break;
  57.                    
  58.                 }
  59.             }
  60.                 if(flag==1)
  61.                 {
  62.                     arr5[k]=arr3[i];
  63.                     k++;
  64.                 }
  65.         }
  66.            
  67.            
  68.         p=k;
  69.         for(k=0;k <p;k++)
  70.         {  
  71.             cout << arr[k] << endl;
  72.         }  
  73. }
  74.  
  75. int main()
  76. {
  77.    
  78.     int arr1[20],arr2[20],arr3[20],arr4[20],arr5[20],i,j,n,m,k;
  79.    
  80.     printf("Enter size of first array:");
  81.     scanf("%d",&m);
  82.     printf("Enter elements of first array:\n");
  83.     for(i=0;i<m;++i){
  84.         cin >> arr1[i];
  85.     }
  86.     printf("\nEnter size of second array:");
  87.     scanf("%d",&n);
  88.     printf("Enter elements of second array:\n");
  89.     for(i=0;i<n;++i){
  90.         cin >> arr2[i];
  91.     }
  92.     int m2 = printIntersection(arr1, arr2, arr4,  m, n, 0);
  93.     int m1 = printUnion(arr1,arr2,arr3,m,n, 0);
  94.     cout<<"Difference A-B is:";
  95.     printDifference(arr3, arr4, arr5, m1, m2,0);
  96.     getchar();
  97.     return 0;
  98. }  
Add Comment
Please, Sign In to add comment