SOJ 1051 Biker's Trip Odometer

题目大意:多组测试样例,每组测试样例输入3个数,第一个表示车轮的直径(浮点型,单位英寸),第二个表示车轮的转数(整型),第三个表示花费的时间(浮点型,单位秒)。

     求解车轮的总路程(单位:英里)和平均速度(单位:英里/每小时)。

     以"Trip #: distance MPH"的格式输出。

     当转数输入为零时,结束程序。

解题思路:本题主要考察单位的转化,具体的转化系数在题目中有给出。求车轮周长的π是3.1415927.

     先将直径的英寸单位转化为英里单位,将时间的秒单位转化为小时。

代码如下:

 1 #include <iostream>
 2 #include <iomanip>
 3 using namespace std;
 4 
 5 int main() {
 6     double d, t;
 7     int foot2inch = 12;
 8     int mile2feet = 5280;
 9     int second2hour = 60 * 60;
10     double p = 3.1415927;
11     int r;
12     int i = 0;
13 
14     while (cin >> d >> r >> t, r) {
15         i++;
16         double dm = d / foot2inch / mile2feet;
17         double th = t / second2hour;
18         double distance = p * dm * r;
19         double hpm = distance / th;
20 
21         cout << "Trip #" << i << ": " << fixed << setprecision(2) << distance << " " << fixed << setprecision(2) << hpm << endl;
22     }
23 
24     return 0;
25 }

 

posted @ 2015-09-26 19:43  MchCyLh  阅读(164)  评论(0编辑  收藏  举报