John带上小狗Tommy去见女友Mary,他们同时出发相向而行。Tommy跑得快,遇到Mary以后就往回跑,遇到John以后再往回跑,……,直到两人相遇。请问:Tommy一共跑了多少路程?
输入格式
开始时两人之间的距离(km)
John、Mary和Tommy的速度(km/h)
输出格式
Tommy所跑的路程(km)
要求:输出2位小数(末位四舍五入)。
输入样例
43.5
3.6 2.8 22.5
输出样例
152.93
用C语言写:
#include<stdio.h>
int main(void)
{
double distance,John,Mary,Tommy,s;
scanf("%lf\n",&distance); //获取需要的数据
scanf("%lf %lf %lf",&John,&Mary,&Tommy);
s=(distance/(John+Mary))*Tommy; //计算路程
printf("%.2lf",s); //保留两位小数
return 0;
}
用java写:
import java.util.Scanner;
public class test1 {
public static void main(String[] args) {
Scanner inS = new Scanner(System.in);
double s = inS.nextDouble();
double vj = inS.nextDouble();
double vm = inS.nextDouble();
double vt = inS.nextDouble();
double st = s/(vj + vm)*vt;
System.out.println(String.format("%.2f",st));
}
}
这题其实很简单,根本不需要管Tommy何时掉头,因为只要两个人没有会和,Tommy就一直在跑,所以只要知道两人会和的需要的时间就行了,再乘以Tommy的速度就是Tommy跑的路程。