Advertisement
Val_Kir

2lab3

Sep 26th, 2016
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.76 KB | None | 0 0
  1. /*
  2.     Ввести значения двух массивов a и b
  3.     и вывести числа массива a,
  4.     которых нет в массиве b.
  5. */
  6.  
  7. #include <stdio.h>
  8. #include <stdlib.h>
  9. #include <time.h>
  10.  
  11. typedef unsigned int word;
  12.  
  13. void main()
  14. {
  15.     word set1=0,set2=0;
  16.     const int n=10;
  17.     int a[n],b[n];
  18.  
  19.     srand(time(0));
  20.    
  21.     printf("a b\n");
  22.     for(int i=0;i<n;++i)
  23.     {
  24.         a[i]=rand()%32;
  25.         b[i]=rand()%32;
  26.         printf("%d %d \n",a[i],b[i]);
  27.     }
  28.  
  29.     putchar('\n');
  30.    
  31.     for(int i=0;i<n;++i)
  32.     {
  33.         set1=set1|(1<<a[i]);
  34.         set2=set2|(1<<b[i]);
  35.     }
  36.  
  37.     set1=set1^(set1&set2); //удаление чисел, которые состоят в пересечении
  38.    
  39.     for(int i=0;i<32;++i)
  40.     {
  41.         if(set1&1<<i)
  42.             printf("%d ",i);
  43.     }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement