Hi,
ich möchte gerne die Ausgabe : System.out.println(celsius+" Grad sind "+(celsius*9.0/5.0+32)+" fahrenheit");
zu einer Printf Ausgabe umändern da ich die Ausgabe anders Anzeigen will....ich hab es so probiert:
System.out.printf( "%d%10d\n", celsius, (celsius*9.0/5.0+32));
leider bekomme ich hier den Fehler:
0Exception in thread "main" java.util.IllegalFormatConversionException: d != java.lang.Double
at java.util.Formatter$FormatSpecifier.failConversion(Formatter.java:4045)
at java.util.Formatter$FormatSpecifier.printInteger(Formatter.java:2748)
at java.util.Formatter$FormatSpecifier.print(Formatter.java:2702)
at java.util.Formatter.format(Formatter.java:2488)
at java.io.PrintStream.format(PrintStream.java:970)
at java.io.PrintStream.printf(PrintStream.java:871)
at umrechnungctof.FToC.main(FToC.java:11)
Wo liegt das Problem?
und ja celsius ist im code schon definiert....hier mal mein Code:
package umrechnungctof;
public class FToC {
public static void main(String[] args) {
int celsius=0; //Startwert
while (celsius<=100) {
// damit klappt es, aber ich möchte die Ausgabe anders formatiert haben System.out.println(celsius+" Grad sind "+(celsius*9.0/5.0+32)+" fahrenheit");
System.out.printf( "%d%d\n", celsius, (celsius*9.0/5.0+32)); //hier klappt es nicht? wo liegt der fehler
celsius+=5;
} // end of while
}
}
edit: Also ich möchte dass er erst normal Celsius anzeigt und dann 10 stellen weiter Fahrenheit