2014-10-03 61 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