#include
using namespace std;
class Integer
{
protected:
int n;
};
class Vector:public Integer
{
private:
double *v;
public:
Vector(int size);
Vector(double *, int);
double &operator[](int i);
friend Vector operator +(Vector &, Vector &);
friend Vector operator -(Vector &, Vector &);
friend double operator *(Vector &, Vector &);
friend ostream & operator <<(ostream &output, Vector &);
friend istream & operator >> (istream &input, Vector &);
};
Vector::Vector(int size)
{
v = new double[size];
for (int i = 0; i
}
Vector::Vector(double *C, int size)
{
v = new double[size];
n = size;
for (int i = 0; i
double &Vector::operator[](int i)
{
return v[i];
}
Vector operator +(Vector &A, Vector &B)
{
int size = A.n;
double *T = new double[size];
for (int i = 0; i
return Vector(T, size);
}
Vector operator -(Vector &A, Vector &B)
{
int size = A.n;
double *T = new double[size];
for (int i = 0; i
return Vector(T, size);
}
double operator *(Vector &A, Vector &B)
{
int size = A.n;
double s = 0;
for (int i = 0; i
return s;
}
ostream & operator <<(ostream &output, Vector &A)
{
int i;
for (i = 0; i
output << A[i];
return output;
}
istream & operator >> (istream &input, Vector &A)
{
for (int i = 0; i
return input;
}
int main()
{
char a; int b;
while (cin >> a >> b)
{
Vector v1(b);
Vector v2(b);
cin >> v1;
cin >> v2;
Vector v(b); double t;
if (a == '+')
{
v = v1 + v2; cout << v << endl;
}
else {
if (a == '-')
{
v = v1 - v2; cout << v << endl;
}
else
if (a == '*')
{
t = v1* v2; cout << t << endl;
}
}
}
}
自己写的,测试通过