iam在我自己的类上处理复数,它对2个复数进行加,减,乘,除以此行为,它还可以得到复数的三角函数和双曲函数 能否帮助我实现这种三角函数和双曲函数
这是我的行为,包括正弦函数,这个实现是真的吗?
void complex :: get(){
cout<<"Real part is:"<<real<<"\n"<<"Imaginary part is:"<<imag<<"\n";
} void complex :: add(complex&amp; sum,const complex&amp; num1,const complex&amp; num2) {
sum.real=num1.real+num2.real;
sum.imag=num1.imag+num2.imag;
}
void complex :: sub(complex&amp; subt,const complex&amp; num1,const complex&amp; num2) {
subt.real=num1.real-num2.real;
subt.imag=num1.imag-num2.imag;
}
void complex :: multi(complex&amp; product,const complex&amp; num1,const complex&amp; num2)
{
product.real=(num1.real*num2.real)-(num1.imag*num2.imag);
product.imag=(num1.real*num2.imag)+(num1.imag*num2.real);
}
void complex :: div(complex&amp; divis,const complex&amp; num1,const complex&amp; num2)
{
divis.real =((num1.real num2.real)+(num1.imag num2.imag))/((num2.real num2.real)+(NUM2。 IMAG num2.imag));
divis.imag =((num1.imag num2.real) - (num1.real num2.imag))/((num2.real num2.real)+(NUM2。 IMAG num2.imag));
}
复杂的复杂:: _ sin(无效)
{ 复杂的; 复杂的温度; temp.real = SIN(a.real)* COSH(a.imag); temp.imag = COS(a.real)*的sinh(a.imag);
return temp;
}
答案 0 :(得分:3)
答案 1 :(得分:1)
这有点像家庭作业,但在这种情况下,标准图书馆已经在<complex>
header完成了你的工作。
如果你真的想重新实现它们,请参阅雅各布的回答,这将有一些小的gorey细节。
答案 2 :(得分:0)
由于三角函数和双曲函数是根据复指数定义的,因此首先要实现Euler的同一性(仅使用真实的三角函数产生复杂的结果)。