Я пытаюсь сделать MPG калькулятор, вот тестовые случаи и ожидаемые результаты:Простая логика MPG
Мой тестер:
Car auto = new Car(15);
System.out.println("New car odometer reading: ");
auto.fillUp(150,8);
System.out.println("Miles per gallon" + auto.calculateMPG());
System.out.println("Miles per gallon" + auto.calculateMPG());
auto.resetMPG();
auto.fillUp(350, 10);
auto.fillUp(450, 20);
System.out.println("Miles per gallon" + auto.calculateMPG());
auto.resetMPG();
auto.fillUp(603, 25.5);
System.out.println("Miles per gallon" + auto.calculateMPG());
Ожидаемые результаты:
New car odometer reading: 15
Miles per gallon: 16.875
Miles per gallon: 16.875
Miles per gallon: 10.0
Miles per gallon: 6.0
Я получить:
New car odometer reading:
Miles per gallon16.875
Miles per gallon16.875
Miles per gallon15.0
Miles per gallon23.647058823529413
Я думаю проблема с моим fillup кода, но я просто так глупо гп и не могу понять его ...
public class Car
{
private int startMiles;
private int endMiles;
private double gallonsUsed;
private int odometerReading;
public Car(int odometerReading) {
startMiles = odometerReading;
endMiles = odometerReading;
}
public void fillUp (int odometerReading, double gallons) {
endMiles = odometerReading;
gallonsUsed = gallonsUsed + gallons;
}
public double calculateMPG() {
double MPG = (endMiles-startMiles)/gallonsUsed;
return MPG;
}
public void resetMPG() {
gallonsUsed = 0;
startMiles = odometerReading;
endMiles = odometerReading;
}
}
Пожалуйста, помогите! Я не могу понять это.
Wild догадка: что произойдет, если изменить содержимое '' resetMPG' к gallonsUsed = 0; startMiles = endMiles; '? – Kevin