Advertisement
gromoff97

Practice. Task 16

Jul 1st, 2020
679
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.22 KB | None | 0 0
  1. // vector.hpp
  2. #ifndef _VECTOR_H_
  3. #define _VECTOR_H_
  4.  
  5. class vector
  6. {
  7. private:
  8.     double x;
  9.     double y;
  10.  
  11. public:
  12.     vector(double x, double y);
  13.     friend bool operator== (vector &vector1, vector &vector2);
  14. };
  15.  
  16. #endif
  17.  
  18. // vector.cpp
  19. #include "vector.hpp"
  20. #include <cmath>
  21.  
  22. vector::vector(double x, double y) {
  23.     this->x = x;
  24.     this->y = y;
  25. }
  26.  
  27. bool operator== (vector &vector1, vector &vector2) {
  28.     // модуль вектора равен квадртному корню из суммы квадратов координат вектора.
  29.     double vector1_module = sqrt(pow(vector1.x, 2) + pow(vector1.y, 2));
  30.     double vector2_module = sqrt(pow(vector2.x, 2) + pow(vector2.y, 2));
  31.     return vector1_module == vector2_module;
  32. }
  33.  
  34. // main.cpp
  35. #include <iostream>
  36. #include "vector.hpp"
  37.  
  38. int main(int argc, char const *argv[])
  39. {
  40.     vector vector1(10, 25);
  41.     vector vector2(40, 5);
  42.     vector vector3(25, 10);
  43.  
  44.     bool comparison1 = (vector1 == vector2);
  45.     bool comparison2 = (vector1 == vector3);
  46.     bool comparison3 = (vector2 == vector3);
  47.  
  48.     std::cout << std::boolalpha << comparison1 << std::endl;
  49.     std::cout << std::boolalpha << comparison2 << std::endl;
  50.     std::cout << std::boolalpha << comparison3 << std::endl;
  51.  
  52.     return 0;
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement