卡路里烧毁程序没有返回应该返回的答案

时间:2014-09-28 14:30:46

标签: java int double

我试图从这个任务中编写一个简单的程序。

骑自行车,慢跑和游泳每小时燃烧的卡路里数分别为200,475和275。一个人每消耗3500卡路里就会减掉1磅的重量。编写一个程序,声明3个变量,一个用于存储慢跑所花费的小时数,第二个用于存储骑自行车所花费的小时数,第三个用于存储游泳所花费的小时数。分配每个变量值。计算并显示减掉的磅数。

我写的代码是:

public class task2
{
    public static void main(String[] args)
    {
        double c = 2; //2 hrs of cycling
        double j = 1; //1 hr of jogging
        double s = 2; //2 hrs of swimming
        double cycle = c * 200; //400 calories
        double jog = j * 475; //475 calories
        double swim = s * 275; //550 calories
        double sum =  cycle + jog + swim / 3500; //1425 / 3500 is what should be in here
        System.out.println("You've burned " + sum + " calories");
    }
}

我回答的答案是:

"你已经烧掉了0.40714286卡路里"

但我回来了:

"你已经烧掉875.15871428571428卡路里"。

我不知道哪里出错了。我希望输出是双倍的,所以它可以显示答案,如果它低于3500卡路里。

2 个答案:

答案 0 :(得分:2)

您的意思是:double sum = (cycle + jog + swim) / 3500;

答案 1 :(得分:1)

你需要()对所有+组合,以便在分割前进行添加:

double sum =  (cycle + jog + swim) / 3500;