Advertisement
Alyks

Untitled

Feb 23rd, 2020
294
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.23 KB | None | 0 0
  1. #include <iostream>
  2. #include <iterator>
  3. #include <set>
  4.  
  5. using namespace std;
  6.  
  7. set<int> makeSet(set<int> sourceSet) {
  8.     set<int> resultSet;
  9.     set<int>::iterator it;
  10.     for (it = sourceSet.begin(); it != sourceSet.end(); it++) {
  11.         int dividersCount = 0;
  12.         if (*it > 1 && sourceSet.count(*it) == 1) {
  13.             for (int j = 1; j <= *it; j++)
  14.                 if (*it % j == 0)
  15.                     dividersCount++;
  16.  
  17.             if (dividersCount < 3)
  18.                 resultSet.insert(*it);
  19.         }
  20.     }
  21.  
  22.     return resultSet;
  23. }
  24.  
  25. int main() {
  26.     set<int> X1 = {1, 2, 3, 4, 5, 6};
  27.     set<int> X2 = {1, 3, 4, 5, 6};
  28.     set<int> Y;
  29.     Y.insert(X1.begin(), X1.end());
  30.     Y.insert(X2.begin(), X2.end());
  31.     cout << "Результатом объеденения множеств X1 и X2 является множество Y:" << endl;
  32.     copy(Y.begin(), Y.end(), ostream_iterator<int>(cout, " "));
  33.     cout << endl;
  34.     set<int> Y1 = makeSet(Y);
  35.     cout << "Подмножество Y1, которое состоит из чисел множества Y, которые являются простыми:" << endl;
  36.     copy(Y1.begin(), Y1.end(), ostream_iterator<int>(cout, " "));
  37.     return 0;
  38. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement