Advertisement
gguuppyy

владшкольник

Oct 26th, 2023 (edited)
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.22 KB | Source Code | 0 0
  1. #include <iostream>
  2. #include <clocale>
  3. using namespace std;
  4.  
  5. int main() {
  6.     setlocale(LC_ALL, "Russian");
  7.     int n, i, j;
  8.     const int MIN = 1, MAX = 50;
  9.     bool isValueInCorrect, IsTrue, IsSimilar;
  10.  
  11.     cout << "Программа находит члены последовательности B, не входящие в последовательность A" << endl;
  12.     cout << "Введите количество членов последовательностей (1 - 50)" << endl;
  13.     do {
  14.         isValueInCorrect = false;
  15.         cin >> n;
  16.  
  17.         if (cin.fail()) {
  18.             cin.clear();
  19.             while (cin.get() != '\n');
  20.             isValueInCorrect = true;
  21.             cout << "Проверьте корректность введенных значений" << endl;
  22.         }
  23.  
  24.         if (!isValueInCorrect && cin.get() != '\n') {
  25.             cin.clear();
  26.             while (cin.get() != '\n');
  27.             isValueInCorrect = true;
  28.             cout << "Проверьте корректность введенных значений" << endl;
  29.         }
  30.  
  31.         if (!isValueInCorrect && ((n < MIN) || (n > MAX))) {
  32.             isValueInCorrect = true;
  33.             cout << "Не входит в диапазон" << endl;
  34.         }
  35.     } while (isValueInCorrect);
  36.  
  37.     int* a = new int[n];
  38.     cout << "Введите члены последовательности A (они не должны повторяться)" << endl;
  39.     for (i = 0; i < n; i++) {
  40.         do {
  41.             isValueInCorrect = false;
  42.             cin >> a[i];
  43.  
  44.             if (cin.fail()) {
  45.                 cin.clear();
  46.                 while (cin.get() != '\n');
  47.                 isValueInCorrect = true;
  48.                 cout << "Проверьте корректность введенных значений" << endl;
  49.             }
  50.  
  51.             if (!isValueInCorrect && cin.get() != '\n') {
  52.                 cin.clear();
  53.                 while (cin.get() != '\n');
  54.                 isValueInCorrect = true;
  55.                 cout << "Проверьте корректность введенных значений" << endl;
  56.             }
  57.  
  58.             j = 0;
  59.             while (!isValueInCorrect && (j < i)){
  60.                 if (a[i] == a[j]) {
  61.                     cout << "Число не должно повторяться" << endl;
  62.                     isValueInCorrect = true;
  63.                 }
  64.                 j++;
  65.             }
  66.         } while (isValueInCorrect);
  67.     }
  68.  
  69.     int* b = new int[n];
  70.     cout << "Введите члены последовательности B (они не должны повторяться)" << endl;
  71.     for (i = 0; i < n; i++) {
  72.         do {
  73.             isValueInCorrect = false;
  74.             cin >> b[i];
  75.  
  76.             if (cin.fail()) {
  77.                 cin.clear();
  78.                 while (cin.get() != '\n');
  79.                 isValueInCorrect = true;
  80.                 cout << "Проверьте корректность введенных значений" << endl;
  81.             }
  82.  
  83.             if (!isValueInCorrect && cin.get() != '\n') {
  84.                 cin.clear();
  85.                 while (cin.get() != '\n');
  86.                 isValueInCorrect = true;
  87.                 cout << "Проверьте корректность введенных значений" << endl;
  88.             }
  89.  
  90.             j = 0;
  91.             while (!isValueInCorrect && (j < i)){
  92.                 if (b[i]== b[j]) {
  93.                     cout << "Число не должно повторяться" << endl;
  94.                     isValueInCorrect = true;
  95.                 }
  96.                 j++;
  97.             }
  98.         } while (isValueInCorrect);
  99.     }
  100.  
  101.     cout << "Члены последовательности B, не входящие в последовательность A: ";
  102.     IsSimilar = true;
  103.     for (i = 0; i < n; i++) {
  104.         IsTrue = true;
  105.         j = 0;
  106.         do {
  107.             IsTrue = (b[i] != a[j]);
  108.             j++;
  109.         } while (IsTrue && (j < n));
  110.         if (IsTrue) {
  111.             cout << b[i] << " ";
  112.             IsSimilar = false;
  113.         }
  114.     }
  115.     if (IsSimilar) {
  116.         cout << "отсутствуют";
  117.     }
  118.  
  119.     delete[] a;
  120.     delete[] b;
  121.     return 0;
  122. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement