EzirhD.jpgimport java.util.Scanner; /** This class converts between two units. */ public class ConversionCalculator { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("Convert from:"); String fromUnit = in.nextLine(); System.out.println("Convert to: "); String toUnit = in.nextLine(); UnitConverter from = new UnitConverter(fromUnit); UnitConverter to = new UnitConverter(toUnit); System.out.println("Value:"); double val = in.nextDouble(); double meters = from.toMeters(val); double converted = to.fromMeters(meters); System.out.println(val + " " + fromUnit + " = " + converted + " " + toUnit); } } public class UnitConverter { static double INCHES = 0.0254001; static double FEET = 0.3048; static double MILES = 1609.35; static double MILLIMETERS = 0.001; static double CENTIMETERS = 0.01; static double METERS = 1; static double KILOMETERS = 1000; private double val ,meters ,converted; String afromUnit; public UnitConverter(String fromUnit) { afromUnit = fromUnit; } public double toMeters(double val) { if(afromUnit.equals("in")) { meters = (val*INCHES); } else if(afromUnit.equals("ft")) { meters = (val*FEET); } else if(afromUnit.equals("mi")) { meters = (val*MILES); } else if(afromUnit.equals("mm")) { meters = (val*MILLIMETERS); } else if(afromUnit.equals("cm")) { meters = (val*CENTIMETERS); } else if(afromUnit.equals("m")) { meters = (val*METERS); } else { meters = (val*KILOMETERS); } return meters; } public double fromMeters(double meters) { if(afromUnit.equals("in")) { converted = Math.round(meters*39.369923740457715); } else if(afromUnit.equals("ft")) { converted = Math.round(meters*3.280839895013123); } else if(afromUnit.equals("mi")) { converted = Math.round(meters*0.0006213688756330196); } else if(afromUnit.equals("mm")) { converted = Math.round(meters*1000); } else if(afromUnit.equals("cm")) { converted = Math.round(meters*100); } else if(afromUnit.equals("m")) { converted = Math.round(meters*1);; } else { converted = Math.round(meters*0.001); } return converted; } }
http://3.imgland.net/EzirhD.png <--- Link to picture in high resolution!