可爱的Tommy(5分)——详解

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跑的路程。

猜你喜欢

转载自blog.csdn.net/YiNianShangE/article/details/125508753