我想制作一个程序来计算公路旅行的MPG。我已经完成了所有的布局,但每次运行我都会得到0.0。我可以使用一些帮助。我不得不让MPG和totalMpg浮动,所以我可以做浮点除法,如果这样做没有意义的话。我司的声明总是出来0
package Gas;
import java.util.Scanner;
import static java.lang.System.out;
public class GasTest {
public static void main(String[] args) {
int gas;
int miles;
int trips;
float mpg;
float totalMpg = 0;
int tripCounter = 1;
Scanner input = new Scanner (System.in);
out.println("Please input number of trips");
trips = input.nextInt();
while (tripCounter <= trips){
out.println ("Input gallons of gas used");
gas = input.nextInt();
out.println("Input miles traveled on trip");
miles = input.nextInt();
mpg = (gas/miles) ;
out.println("Your MPG for this trip was " + mpg);
totalMpg = (mpg + totalMpg)/2;
out.println("Your overall MPG for all trips is " + totalMpg);
tripCounter++;
}
}
}
我建议你用'double'作为'float'很少有足够的精度。它可能会在这种情况下,但我建议习惯使用'双'作为一个好习惯。 – 2013-05-05 15:03:26
您对totalMpg的计算完全错误。这是对指数加权平均值的估计,但我怀疑这不是你想要的。 – 2013-05-05 15:04:36
那你怎么去计算totalMpg呢? – Blank1268 2013-05-05 15:32:46