#include<bits/stdc++.h>
using namespace std;
int main( )
{
double r1,p1,r2,p2,a,b;
scanf("%lf%lf%lf%lf",&r1,&p1,&r2,&p2);
a=r2*r1*cos(p1+p2);b=r2*r1*sin(p1+p2);
if(fabs(a)<0.005) a=0;
if(fabs(b)<0.005) b=0;
if(b<0) printf("%.2lf%.2lfi\n",a,b);
else printf("%.2lf+%.2lfi\n",a,b);
return 0;
}
为什么一定要写if(fabs(a)<0.005) a=0;和if(fabs(b)<0.005) b=0;啊?
我自己测试的时候没写这两句,运行后结果在临界值附近没有任何问题啊?