Advertisement
Dth_RazaK

class Vector

Nov 22nd, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.31 KB | None | 0 0
  1. #include <iostream>
  2. #include <conio.h>
  3.  
  4. using namespace std;
  5.  
  6. class Vector{
  7. private:
  8.     double *v;
  9.     int n;
  10. public:
  11.     Vector():n(0),v(NULL){}
  12.     Vector(int n1) :n(n1) {
  13.         v = new double[n];
  14.     }
  15.     Vector(const Vector&a) {
  16.         if (this != &a) {
  17.             n = a.n;
  18.             v = new double[n];
  19.             for (int i = 0; i < n; i++) {
  20.                 v[i] = a.v[i];
  21.             }
  22.         }
  23.     }
  24.     ~Vector() {
  25.         delete[] v;
  26.     }
  27.     friend istream& operator >> (istream&in, Vector &a) {
  28.         for (int i = 0; i < a.n; i++) {
  29.             in >> a.v[i];
  30.         }
  31.         return in;
  32.     }
  33.     friend ostream& operator << (ostream &out, Vector &a) {
  34.         for (int i = 0; i < a.n; i++) {
  35.             out << a.v[i] << ' ';
  36.         }
  37.         out << endl;
  38.         return out;
  39.     }
  40.     Vector operator + (Vector&a) {
  41.         Vector res(a.n);
  42.         for (int i = 0; i < n; i++) {
  43.             res.v[i] = v[i] + a.v[i];
  44.         }
  45.         return res;
  46.     }
  47.     double operator*(Vector &a) {
  48.         double res = 0;
  49.         for (int i = 0; i < n; i++) {
  50.             res += v[i] + a.v[i];
  51.         }
  52.         return res;
  53.     }
  54.     Vector& operator = (const Vector&a) {
  55.         if (this != &a) {
  56.             delete[] v;
  57.             n = a.n;
  58.             v = new double[n];
  59.             for (int i = 0; i < n; i++) {
  60.                 v[i] = a.v[i];
  61.             }
  62.         }
  63.         return *this;
  64.     }
  65.  
  66. };
  67.  
  68.  
  69. void main() {
  70.     int n;
  71.     cin >> n;
  72.     Vector a(n);
  73.     Vector b(n);
  74.     Vector c(n);
  75.     cin >> a;
  76.     cin >> b;
  77.     c = a + b;
  78.     cout << c;
  79.     cout << "Scalar = " << (a*b);
  80.     _getch();
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement