2014-10-03 55 views
0

由於優質汽油比普通汽油更昂貴,所以我需要計算必須使用優質汽油的汽油里程來彌補普通汽油的成本差異。該值由gasmileageRequired變量表示。計算氣體里程效率

問題:我是否正確計算了gasmileageRequired變量?

import java.text.DecimalFormat; 
    import java.text.NumberFormat; 
    import java.util.Scanner; 

    public class GasMileage { 
    public static void main(String[] args) { 

     //Variable declarations 
     Scanner scan = new Scanner(System.in); 
     NumberFormat numFmt = new DecimalFormat("##.###"); 
     NumberFormat costFmt = DecimalFormat.getCurrencyInstance(); 

     double tankSize = 0; 
     final double regularCost; 
     final double premiumCost; 
     double regularGasMileage = 0; 


     //User enters gas tank size 
     System.out.print("What is the size of your gas tank? (in gallons) "); 
     tankSize = scan.nextDouble(); 

     //User enters price of regular gasoline 
     System.out.print("What is the cost of regular gasoline per gallon? (in $) "); 
     regularCost = scan.nextDouble(); 

     //User enters price of premium gasoline 
     System.out.print("What is the cost of premium gasoline per gallon? (in $) "); 
     premiumCost = scan.nextDouble(); 

     //User enters cars' gas mileage 
     System.out.print("What is your cars' gas mileage on regular gasoline? (miles/gallon) "); 
     regularGasMileage = scan.nextDouble(); 

     //Variable declarations 
     double totalregularCost = regularCost * tankSize; 
     double totalpremiumCost = premiumCost * tankSize; 
     double costDifference = totalpremiumCost - totalregularCost; 
     double gasmileageRequired = regularGasMileage + (premiumCost/costDifference); 
     scan.close(); 

     //Begin output 
     System.out.println("\nGas tank size: " + tankSize + " gallons"); 
     System.out.println("\nTotal cost of regular gasoline: " + costFmt.format(totalregularCost) + "\nGas mileage (regular): " + numFmt.format(regularGasMileage) + " miles/gallon"); 
     System.out.println("\nTotal cost of premium gasoline: " + costFmt.format(totalpremiumCost) + "\nGas mileage required to make up for cost increase: " + 
     numFmt.format(gasmileageRequired) + " miles/gallon"); 
    } 
} 
+1

這是很多代碼 - 哪裏是真正的問題? – Mureinik 2014-10-03 16:54:04

+0

爲什麼你使用'final'關鍵字? – 2014-10-03 16:54:59

+0

問題在代碼的頂部?我想知道是否正確計算gasmileageRequired變量。 – 2014-10-03 16:57:51

回答

0

gasmilage需要正確計算,是的。它應該告訴你需要多少MPG才能彌補價格差異。

+1

是的,我知道我在找那個,我只是一直在絞盡腦汁,不知道這個gasmileageRequired變量是否被正確計算。 – 2014-10-03 17:11:49