题目内容
题目描述
写一个复数类,实现以下程序主函数中所需要的功能。
#include
using namespace std;
class MyComplex
{
private:
double x,y;
public:
/* Implementation of MyComplex */
};
int main()
{
MyComplex z1;
MyComplex z2;
cin >> z1 >> z2;
cout << z1 + z2 <<endl;
cout << z1 - z2 <<endl;
cout << z1 * z2 <<endl;
cout << z1 / z2 <<endl;
cout << (z1 += z2) <<endl;
cout << (z1 -= z2) <<endl;
cout << (z1 *= z2) <<endl;
cout << (z1 /= z2) <<endl;
return 0;
}
输入格式
输入包括两行,第一行是两个整数a, b(0<|a|+1,|b|<100010<|a|+1,|b|<10001),表示复数a+bia+bi。
第二行是两个整数c, d(0<|c|+1,|d|<100010<|c|+1,|d|<10001),表示复数c+dic+di。输入数据保证不出现除以0的情况。
输出格式
输出包括八行,对应所给程序中的输出。注意输出浮点数保留2位小数。
Sample Input 1
3 6
-3 5
Sample Output 1
0.00 11.00
6.00 1.00
-39.00 -3.00
0.62 -0.97
0.00 11.00
3.00 6.00
-39.00 -3.00
3.00 6.00
Sample Input 2
5 9
5 -9
Sample Output 2
10.00 0.00
0.00 18.00
106.00 0.00
-0.53 0.85
10.00 0.00
5.00 9.00
106.00 0.00
5.00 9.00
代码实现
#include <stdio.h>
int main(){
int a,b,c,d;
double xn,xi,yn,yi,r1,r2;
scanf("%d %d",&a,&b);
scanf("%d %d",&c,&d);
xn = a;
xi = b;
yn = c;
yi = d;
printf("%.2lf %.2lf\n",xn+yn,xi+yi);
printf("%.2lf %.2lf\n",xn-yn,xi-yi);
printf("%.2lf %.2lf\n",xn*yn-xi*yi, xn*yi+xi*yn);
printf("%.2lf %.2lf\n",(xn*yn+xi*yi)/(yn*yn+yi*yi),(xi*yn-xn*yi)/(yn*yn+yi*yi));
//(ac+bd+(bc-ad)i)/(c^2+d^2)
xn+=yn;xi+=yi;
printf("%.2lf %.2lf\n",xn,xi);
xn-=yn;xi-=yi;
printf("%.2lf %.2lf\n",xn,xi);
r1 = xn*yn-xi*yi; r2= xn*yi+xi*yn;
printf("%.2lf %.2lf\n", r1,r2);
xn=r1;xi=r2;
printf("%.2lf %.2lf\n",(xn*yn+xi*yi)/(yn*yn+yi*yi),(xi*yn-xn*yi)/(yn*yn+yi*yi));
return 0;
}
时间:0ms 空间:9232kb