首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

懂c++的人可以进来给小弟我看看小弟我这程序该如何修改么

2012-05-04 
懂c++的人可以进来给我看看我这程序该怎么修改么?题目是复数相加的公式是 (a+bi)+(c+di)(a+c)+(b+d)i. 给

懂c++的人可以进来给我看看我这程序该怎么修改么?
题目是复数相加的公式是 (a+bi)+(c+di)=(a+c)+(b+d)i. 给出两个复数,请你计算它们的和。输出它们的和。输出格式的样例为:(1-2i)+(3+4i)=4+2i 
  以下是我写的程序 运行时有错
#include<iostream>
using namespace std;
class complex

int a,b,c,d;
public:
complex(int x,int y,int z,int t)
{
  a=x;
b=y;
c=z;
d=t;
}
int sum()
{
int i;

  return (a+b*i)+(c+d*i)=(a+c)+(b+d)i;

}
};
void main()
{
int h ,j,k,l;
while(cin>>h>>j>>k>>l)
{
  complex c;
c.complex(h,j,k,l);
cout<<c.sum()<<endl;

}

}

[解决办法]
个人觉得你的类设计的不是太好,我觉的这样写你看怎么样?
#include<iostream>
using namespace std;
class Complex
{
public:
float real, image;
public:

Complex(float a,float b);
} ;

Complex::Complex(float a,float b)
{
real=a;
image=b;
}
Complex add(Complex a, Complex b)
{
Complex c(0,0);
c.real=a.real+b.real;
c.image=a.image+b.image;
return c;

}

int main()
{
Complex a(1,-2);
Complex b(3,4);
Complex c(0,0);
c=add(a,b);
cout<<"两个虚数和的实部为:"<<c.real<<" 虚部为:"<<c.image<<endl; 
cout<<"("<<a.real<<"+"<<a.image<<"*i)+"<< "("<<b.real<<"+"<<b.image<<"*i)="<<c.real<<"+"<<c.image<<"*i"<<endl;
return 0;
}

热点排行