Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cmath>
- using namespace std;
- class Vector{
- private:
- int *v;
- public:
- int dim=0;
- Vector(int n){
- dim=n;
- v=new int[dim];
- for(int i=0;i<dim;i++)
- *(v+i)=0;
- }
- ~Vector(){
- delete[] v;
- }
- int * get(){
- return v;
- }
- double length(){
- double length=0;
- for(int i=0;i<dim;i++){
- length+=pow(*(v+i),2);
- }
- return sqrt(length);
- }
- void set(int index,int value){
- if(index < dim){
- *(v+index)=value;
- }
- }
- void Display_Coords(){
- for(int i=0;i<dim;i++)
- cout<<*(v+i)<<" ";
- cout << endl;
- }
- friend Vector & operator+(Vector &left,Vector &right);
- Vector & operator*(int A){
- Vector * temp= new Vector(this->dim);
- for(int i=0;i<dim;i++)
- temp->set(i,*(v+i)*A);
- return *temp;
- }
- };
- Vector & operator+(Vector &left, Vector &right){
- if(left.dim==right.dim){
- Vector * temp = new Vector(left.dim);
- int *lp=left.get();
- int *rp=right.get();
- for(int i=0;i<temp->dim;i++){
- temp->set(i,*(lp+i)+*(rp+i));
- }
- return *temp;
- }
- }
- int main(){
- Vector v1(2);
- Vector v2(2);
- v1.set(0,1);
- v1.set(1,2);
- v2.set(0,3);
- v2.set(1,5);
- Vector v3=(Vector)(v1+v2);
- Vector v4=v1*44;
- cout << "V1:";
- v1.Display_Coords();
- cout << "V2:";
- v2.Display_Coords();
- cout << "V3:";
- v3.Display_Coords();
- cout << "V4:";
- v4.Display_Coords();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement