Advertisement
KanadeTachibana

Shitty Comp Sci HW

Dec 3rd, 2018
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.49 KB | None | 0 0
  1. // M5,6,7,8,9,11
  2.  
  3. // === M5 === //
  4. // #1
  5.  
  6. int Demo11::getVal1() const {
  7.     return val1;
  8. }
  9.  
  10. int Demo11::getVal2() const {
  11.     return val2;
  12. }
  13.  
  14. Demo11 Demo11::subDemo11A(const Demo11 &obj1, const Demo11 &obj2) {
  15.     Demo11 newObj;
  16.     newObj.val1 = obj1.val1 - obj2.val1,
  17.     newObj.val2 = obj1.val2 - obj2.val2;
  18.     return newObj;
  19. }
  20.  
  21. void Demo11::decrementDemo11A(Demo11 &obj) {
  22.     obj.val1 -= 1;
  23.     obj.val2 -= 1;
  24. }
  25.  
  26. // #2
  27.  
  28. Demo11 subDemo11B(const Demo11 &obj1, const Demo11 &obj2) {
  29.     Demo11 newObj;
  30.     newObj(obj1.getVal1() - obj2.getVal1(), obj1.getVal2() - obj2.getVal2());
  31.     return newObj;
  32. }
  33.  
  34. // #3
  35.  
  36. void decrementDemo11B(Demo11 &obj) {
  37.     obj(obj.getVal1() - 1, obj.getVal2() - 1);
  38. }
  39.  
  40. // #4
  41.  
  42. // A
  43. obj4 = obj4.subDemo11A(obj1, obj2);
  44.  
  45. // B
  46. obj4 = subDemo11B(obj1, obj2);
  47.  
  48. // === M6 === //
  49.  
  50. // #1
  51. class Demo12 {
  52.     public:
  53.         Demo12(int n1 = 0, int n2 = 0); // constructor
  54.         int getFirst( ); // returns the value of the first member variable
  55.         int getSecond( ); // returns the value of the second member variable
  56.         friend Demo12 operator +(const Demo12 &ob1, const Demo12 &obj2);
  57.         friend bool operator ==(const Demo12 &ob1, const Demo12 &obj2);
  58.         friend Demo12 operator ++(Demo12 &obj);
  59.         friend Demo12 operator -(const Demo12 &obj1, const Demo12 &obj2);
  60.         friend bool operator >(const Demo12 &obj1, const Demo12 &obj2);
  61.         friend Demo12 operator --(Demo12 &obj);
  62.     private:
  63.         int val1;
  64.         int val2;
  65. };
  66.  
  67. // #2
  68.  
  69. robj = tobj - sobj;
  70.  
  71. --robj;
  72.  
  73. int num1, num2;
  74. cin >> num1 >> num2;
  75. uobj(num1, num2);
  76. if (uobj > robj)
  77.     cout << "I am happy.";
  78. else
  79.     cout << "I am sad.";
  80.  
  81. // === M7 === //
  82.  
  83. class Triplet1 {
  84.     public:
  85.         Triplet1(int val1 = 1, int val2 = 1, int val3 = 1);
  86.         int getFirst();
  87.         int getSecond();
  88.         int getThird();
  89.         friend Triplet1 operator ++(Triplet1 &obj);
  90.     private:
  91.         int first;
  92.         int second;
  93.         int third;
  94. }
  95.  
  96. // === M8 === //
  97.  
  98. class Triplet2 {
  99.     public:
  100.         Triplet1(int val1 = 1, int val2 = 1, int val3 = 1);
  101.         int getFirst();
  102.         int getSecond();
  103.         int getThird();
  104.         friend Triplet1 operator -(Triplet2 &obj1, Triplet2 &obj2);
  105.         friend Triplet1 operator ++(Triplet2 &obj);
  106.         friend bool operator <=(Triplet2 &obj1, Triplet2 &obj2);
  107.     private:
  108.         int first;
  109.         int second;
  110.         int third;
  111. }
  112.  
  113. // === M9 === //
  114.  
  115. // Cry, this part is SOOOOO hard and SOOOO long (but not in the good way ;3) that youll take way longer than it took me to do the rest to do this.
  116.  
  117. // === M11 === //
  118.  
  119. class DynamicP() {
  120.     public:
  121.         DynamicP(char newSymb = 'A', int ival = 50, double dval = 12.50);
  122.         ~DynamicP();
  123.         friend DynamicP operator =(const DynamicP &obj1, const DynamicP &obj2);
  124.         void read();
  125.         void write();
  126.         void set_symb(char newSymb);
  127.         void set_iptr(int iVal);
  128.         void set_dptr(double dVal);
  129.         char get_symb();
  130.         int get_iptr();
  131.         double get_dptr();
  132.     private:
  133.         char symb;
  134.         int *iptr;
  135.         double *dptr;
  136. }
  137.  
  138. DynamicP::DynamicP(char newSymb, int ival, double dval) {
  139.     symb = newSymb;
  140.     iptr = new int;
  141.     *iptr = ival;
  142.     dptr = new double;
  143.     *dptr = dval;
  144. }
  145.  
  146. DynamicP::~DynamicP() {
  147.     delete iptr;
  148.     delete dptr;
  149. }
  150.  
  151. void DynamicP::read() {
  152.     cin >> symb >> *iptr >> *dptr;
  153. }
  154.  
  155. void DynamicP::write() {
  156.     cout << symb << *iptr << *dptr;
  157. }
  158.  
  159. void DynamicP::set_symb(char newSymb) {
  160.     symb = newSymb;
  161. }
  162.  
  163. void DynamicP::set_iptr(int iVal) {
  164.     *iptr = iVal;
  165. }
  166.  
  167. void DynamicP::set_dptr(double dVal) {
  168.     *dptr = dVal;
  169. }
  170.  
  171. char DynamicP::get_symb() {
  172.     return symb;
  173. }
  174.  
  175. int DynamicP::get_iptr() {
  176.     return *iptr;
  177. }
  178.  
  179. double DynamicP::get_dptr() {
  180.     return *dptr;
  181. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement