SHARE
TWEET

Untitled

grioool Nov 13th, 2019 84 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. void calculateIntersectionOf2Sets(int *set1, int *set2) {
  2.     int resultSetLength = calculatePossibleResultSetLength(set1, set2);
  3.     int resultSet[resultSetLength];
  4.     int realLength = 0;
  5.  
  6.     for (int i = 0; i < set1.length; i++) {
  7.         int element = set1[i];
  8.         if (isElementInSet(set2, element)) {
  9.             resultSet[realLength] = element;
  10.             realLength++;
  11.         }
  12.     }
  13.  
  14.     return Arrays.copyOfRange(resultSet, 0, realLength);
  15. }
  16.  
  17. int calculatePossibleResultSetLength(int[] set1, int[] set2) {
  18.     if (set1.length > set2.length) {
  19.         return set1.length;
  20.     } else {
  21.         return set2.length;
  22.     }
  23. }
  24.  
  25. private static boolean isElementInSet(int[] set, int element) {
  26.     boolean result = false;
  27.  
  28.     for (int i = 0; i < set.length; i++) {
  29.         if (set[i] == element) {
  30.             result = true;
  31.             break;
  32.         }
  33.     }
  34.  
  35.     return result;
  36. }
  37.  
  38. private static int[] getArrayElementsDividedBy(int[] numbers, int divider) {
  39.     int[] resultSet = new int[numbers.length];
  40.     int realLength = 0;
  41.  
  42.     for (int i = 0; i < numbers.length; i++) {
  43.         if (isDividedBy(numbers[i], divider)) {
  44.             resultSet[realLength] = numbers[i];
  45.             realLength++;
  46.         }
  47.     }
  48.  
  49.     return Arrays.copyOfRange(resultSet, 0, realLength);
  50. }
  51.  
  52. void copyOfRange() {
  53.    
  54. }
  55.  
  56. bool isDividedBy(int number, int divider) {
  57.     return number % divider == 0;
  58. }
  59.  
  60. void printSet(int[] set) {
  61.     if (set.length == 0) {
  62.         System.out.print("\"пустое множество\"");
  63.     } else {
  64.         System.out.print("{");
  65.         for (int i = 0; i < set.length; i++) {
  66.             System.out.print(set[i]);
  67.             if (i < set.length - 1) {
  68.                 System.out.print(", ");
  69.             }
  70.         }
  71.         System.out.print("}");
  72.     }
  73. }
  74.  
  75. bool isOneSetInAnother(int[] set1, int[] set2) {
  76.     bool result = true;
  77.  
  78.     for (int i = 0; i < set1.length; i++) {
  79.         if (!isElementInSet(set2, set1[i])) {
  80.             result = false;
  81.             break;
  82.         }
  83.     }
  84.  
  85.     return result;
  86. }
  87.  
  88. void main() {
  89.  
  90.     int[] X1 = {1, 2, 3, 4, 5, 6};
  91.     int[] X2 = {1, 3, 4, 5, 6};
  92.     int[] X3 = {1, 5};
  93.  
  94.     int[] Y = calculateIntersectionOf2Sets(X1, X2);
  95.     System.out.print("Pезультатом пересечения множества ");
  96.     printSet(X1);
  97.     System.out.print(" со множеством ");
  98.     printSet(X2);
  99.     System.out.print(" является множество ");
  100.     printSet(Y);
  101.     System.out.println();
  102.  
  103.     int[] setElementsDividedBy3 = getArrayElementsDividedBy(Y, 3);
  104.     System.out.print("у множества ");
  105.     printSet(Y);
  106.     System.out.print(" элементы, которые делятся на 3, образуют множество ");
  107.     printSet(setElementsDividedBy3);
  108.     System.out.println();
  109.  
  110.     boolean isx3inY = isOneSetInAnother(X3, Y);
  111.     System.out.print("множество ");
  112.     printSet(X3);
  113.     if (isx3inY) {
  114.         System.out.print(" является подмножеством множества ");
  115.     } else {
  116.         System.out.print(" НЕ является подмножеством множества ");
  117.     }
  118.     printSet(Y);
  119. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top