1. 程式人生 > >pat乙級1051

pat乙級1051

log 結果 ble OS urn body blog name post

當結果中a或者b小於0,大於0.005時,保留兩位小數會輸出-0.00,但應輸出0.00。

 1 #include <iostream>
 2 #include <math.h>
 3 using namespace std;
 4 
 5 int main()
 6 {
 7     double r1, p1, r2, p2;
 8     cin >> r1 >> p1 >> r2 >> p2;
 9     double a1 = r1 * cos(p1), b1 = r1 * sin(p1);
10     double a2 = r2 * cos(p2), b2 = r2 * sin(p2);
11 double a3 = a1 * a2 - b1 * b2; 12 double b3 = a1 * b2 + b1 * a2; 13 if (a3 > -0.005 && a3 < 0) a3 = -a3; 14 if (b3 > -0.005 && b3 < 0) b3 = -b3; 15 if (b3 < 0) 16 printf("%.2f%.2fi", a3, b3); 17 else 18 printf("%.2f+%.2fi", a3, b3); 19
return 0; 20 }

pat乙級1051