mramine364

set basic operations class

Aug 19th, 2016
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.48 KB | None | 0 0
  1. #include "setOp.h"
  2.  
  3. setOp::setOp()
  4. {
  5. }
  6.  
  7.  
  8. setOp::~setOp()
  9. {
  10. }
  11.  
  12. void setOp::print(vector<int> a){
  13.     cout << "{";
  14.     for (int i = 0; i < a.size()-1; i++){
  15.         cout << a[i] << ", ";
  16.     }
  17.     cout << a[a.size()-1] << "}\n";
  18. }
  19.  
  20. vector<int> setOp::Intersection(vector<int> a, vector<int> b){
  21.     vector<int> r;
  22.     for (int i = 0; i < a.size(); i++){
  23.         for (int j = 0; j < b.size(); j++){
  24.             if (a[i] == b[j]){
  25.                 r.push_back(a[i]);
  26.             }
  27.         }
  28.     }
  29.     return r;
  30. }
  31.  
  32. vector<int> setOp::Union(vector<int> a, vector<int> b){
  33.     vector<int> r;
  34.     for (int i = 0; i < a.size(); i++){
  35.         r.push_back(a[i]);     
  36.     }
  37.     for (int i = 0; i < b.size(); i++){
  38.         int j;
  39.         for (j = 0; j < a.size(); j++){
  40.             if (b[i] == a[j])
  41.                 break;
  42.         }
  43.         if (j == a.size())
  44.             r.push_back(b[i]);
  45.     }
  46.     return r;
  47. }
  48.  
  49. vector<int> setOp::Symmetric_difference(vector<int> a, vector<int> b){
  50.     vector<int> r;
  51.     for (int i = 0; i < b.size(); i++){
  52.         int j;
  53.         for (j = 0; j < a.size(); j++){
  54.             if (b[i] == a[j])
  55.                 break;
  56.         }
  57.         if (j == a.size())
  58.             r.push_back(b[i]);
  59.     }
  60.     for (int i = 0; i < a.size(); i++){
  61.         int j;
  62.         for (j = 0; j < b.size(); j++){
  63.             if (a[i] == b[j])
  64.                 break;
  65.         }
  66.         if (j == b.size())
  67.             r.push_back(a[i]);
  68.     }
  69.     return r;
  70. }
  71.  
  72. vector<int> setOp::Relative_complement(vector<int> a, vector<int> b){
  73.     vector<int> r;
  74.     for (int i = 0; i < b.size(); i++){
  75.         int j;
  76.         for (j = 0; j < a.size(); j++){
  77.             if (b[i] == a[j])
  78.                 break;
  79.         }
  80.         if (j == a.size())
  81.             r.push_back(b[i]);
  82.     }
  83.     return r;
  84. }
Add Comment
Please, Sign In to add comment