题目
http://acm.hdu.edu.cn/showproblem.php?pid=1038
总结
又是英文题
Biker’s Trip Odometer(自行车的里程表)
A magnet(磁体) is attached to one of the spokes(车轮的辐条)
on the front(前面) wheel so that it will line up with the Hall Effect
switch once per(每个) revolution of the wheel.
The speedometer(速度计) monitors the sensor(传感器) to count wheel revolutions.
*If the diameter of the wheel is known,
*the distance traveled can be easily be calculated if you know how many
*revolutions the wheel has made.
*In addition, if the time it takes to complete
*the revolutions is known, the average speed can also be calculated.
Input
one per line, of the form:
diameter(直径)revolutions(旋转次数) time(时间)
The diameter is expressed in inches as a floating(浮点数) point value.
The revolutions is an integer(整型) value.
The time is expressed in seconds as a floating(浮点数) point value.
**Input ends when the value of revolutions is 0 (zero).
Output
For each data set, print:
Trip #N: distance(距离) MPH(每小时英里数)
Of course N(例子数) should be replaced by the data set number,
distance by the total distance in miles (单位是每英里)(accurate to 2 decimal places) (保留两位小数)
and MPH by the speed in miles per hour(单位是每小时) (accurate to 2 decimal places).
Your program should not generate any output for the ending case when revolutions is 0.(转数为0时停止输出)
Constants
For p use the value: 3.1415927.
There are 5280 feet in a mile.
There are 12 inches in a foot. (12inches=1foot;1mile=5280feet)
There are 60 minutes in an hour.
There are 60 seconds in a minute.
There are 201.168 meters in a furlong.(并没有用到)
Sample Input
26 1000 5
27.25 873234 3000
26 0 1000
Sample Output
Trip #1: 1.29 928.20
Trip #2: 1179.86 1415.84
AC代码
#include <stdio.h>
int main()
{
int count=0;
double a,b,c,d,e;
double p=3.1415927;
while(scanf("%lf %lf %lf",&a,&b,&c)!=-1&&b!=0)
{
count++;
d=p*a*b/12/5280;//d只是每一秒的英里数
e=d*60*60/c;
printf("Trip #%d: %.2lf %.2lf\n",count,d,e);
}
return 0;
}