Umwandlung von Celsius zu Fahrenheit mit Variablen C oder F

Im erstellen ein Programm, das konvertieren von Celsius zu Fahrenheit und Umgekehrt. Ich möchte, dass der Nutzer zur Eingabe der Temperatur dann C oder F für die Temperatur ist es. Das Problem das ich habe ist mit die Eingabe als C oder F. können Sie tun, wenn (input == 'F') dann haben Sie es konvertieren?

 import java.util.Scanner;

public class Test {
    public static void main(String [] args) 
    { 
     Scanner scan = new Scanner(System.in); 
String tempScale = ""; 

System.out.print("Enter the current outside temperature: "); 
double temps = scan.nextDouble(); 

System.out.println("Celsius or Fahrenheight (C or F): "); 
int input = scan.nextInt(); 

if (input == F) { 
//convert F to C 
temps = (temps-32) * 5/9.0; 
tempScale = "Celsius."; 
} else if (input == 'C') { 
//convert C to F 
temps = (temps * 9/5.0) +32; 
tempScale = "Fahrenheit."; 
}//end if/else 

System.out.println("The answer = "+temps+" degrees "+tempScale); 

}//end main() 
}//end class
  • Haben Sie versucht, es zu testen?
  • "Was ist Los?" (Tipp: Sie wollen nicht Lesen, 'C' oder 'F' als int - vielleicht als ein String? Und dann sehen "F".equals(whatIRead) ..)
  • Warum nicht haben Sie einen Versuch auf kompilieren und ausführen?
  • Sollten Sie java.util.InputMismatchException. Überprüfen Sie diese Zeile int input = scan.nextInt(); und Ihre Bedingungen für die ex. if (input == F).
InformationsquelleAutor brl214 | 2013-09-24
Schreibe einen Kommentar