Die Eprog.jar ist eine Funktionsbibliothek, die Informatik-Studenten auf der TU Wien Einführung in die Programmierung erleichtern soll. Tatsache ist, dass es hier möglicherweise das eine oder andere Problem gibt. Dieser Artikel beleuchtet den "rückgewonnenen" Quellcode.
Fixkommaausgabe und -umwandlung | |
---|---|
Bis auf die Fixkommaausgabe greifen alle EprogIO-Ausgaberoutinen auf System.out.print zu. Ein Beispiel: 25 public static void println(String s) { Ich möchte mich deshalb voll und ganz auf die 6, sehr verwandten, Ausgabefunktionen und Umwandlungsfunktionen für Fließkommazahlen beschränken. |
String toFixed(double d) | |
---|---|
125 public static String toFixed(double d) { 126 DecimalFormat decimalformat = new DecimalFormat("#0.000"); 127 DecimalFormatSymbols decimalformatsymbols = decimalformat.getDecimalFormatSymbols(); 128 decimalformatsymbols.setDecimalSeparator('.'); 129 decimalformat.setDecimalFormatSymbols(decimalformatsymbols); 130 return decimalformat.format(d); 131 } |
Beschreibung toFixed | |
---|---|
126 Wir legen ein DecimalFormat Objekt an, welches uns die ganze Arbeit abnimmt. Es möge sich schon mal mental darauf einstellen, dass wir Zahlen gerne mit drei Nachkommastellen hätten und diese mit einem . (nicht etwa ,) vom Rest getrennt sind. 127 Wir legen auch noch ein paar Symbole für die Zahlenausgabe an. Zuständig ist dafür DecimalFormatSymbols, welches uns so Dinge wie Tausendertrennung, Nachkommatrennung, zur Verfügung stehende Ziffern, etc. zur Verfügung stellt. 128 hier geben wir nochmal an, dass wir gerne ein . als Nachkommatrennung hätten. Wir sind da stur. 129 Die schönsten DecimalFormatSymbols nützen nichts, wenn unser DecimalFormat nichts davon weis. 130 Wir liefern die korrekt formatierte Version unserer Zahl zurück. |
Zusammenfassung Fixkommadarstellung | |
---|---|
imho. sehr schön gelöst. Was mir unklar ist: Wieso 6x die ziemlich genau gleiche Methode? (3x double, 3x float). Wie wäre es zB mit 1 static void printFixedln(double d) { Mir ist an dieser Stelle nicht klar, ob JAVA den Code so optimiert hat und 6x hingeschrieben (das wäre gut) oder er von Anfang an so programmiert war (das wäre nicht so gut; ändert man an einer Stelle...). |
Comments - Make a comment |
The comments are owned by the poster. We are not responsible for its content.
|
AdministrativeTexts
updated by freddiemac1993, 2013-06-14
wiki
Re: adventures
created by brittdavis10, 2012-02-23 (1 rply, 3 views)
thread
Re: how to run phpwebsite...
created by alexander, 2011-08-25 (2 rpls, 3607 views)
thread
Re: Forum tags
created by HaroldFaragher, 2011-08-22 (3 rpls, 8488 views)
thread