Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java...
-
Upload
dinhkhuong -
Category
Documents
-
view
222 -
download
3
Transcript of Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java...
![Page 1: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/1.jpg)
Einstieg in die Informatik mit JavaFormatierte Ausgabe
Gerd Bohlender
Institut fur Angewandte und Numerische Mathematik
1 / 22
![Page 2: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/2.jpg)
Gliederung
1 Uberblick
2 Nachteile von println
3 Formatierte Ausgabe
4 Weitere Formatvarianten
2 / 22
![Page 3: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/3.jpg)
Gliederung
1 Uberblick
2 Nachteile von println
3 Formatierte Ausgabe
4 Weitere Formatvarianten
3 / 22
![Page 4: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/4.jpg)
Uberblick
In diesem Kapitel wird beschrieben, wie die Ausgabe vonZahlen ubersichtlich gestaltet werden kann.
Bisherige AusgabeAusgabe mit println in freiem Format.
Alternative AusgabeFormatierte Ausgabe mit printf.
4 / 22
![Page 5: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/5.jpg)
Gliederung
1 Uberblick
2 Nachteile von println
3 Formatierte Ausgabe
4 Weitere Formatvarianten
5 / 22
![Page 6: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/6.jpg)
Eigenschaften von println
Bei der Ausgabe mit print bzw. println werden nur so vieleStellen ausgegeben, wie fur die Darstellung des Werts notigsind.
Vorteil: sparsamer PlatzverbrauchNachteil: kann sehr unubersichtlich werden
Gutes Beispiel: Funktionswert ausgeben
x = 1;System . out . p r i n t l n ( ” s in ( ” + x + ” ) = ” +
Math . s in ( x ) ) ;
Ausgabe:
sin(1.0) = 0.8414709848078965
6 / 22
![Page 7: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/7.jpg)
Nachteile von println
Schlechtes Beispiel: Funktionstabelle ausgeben
for ( double x=−0.2; x<1; x +=0.1)System . out . p r i n t l n ( x + ” \ t ” + Math . s in ( x ) +
” \ t ” + Math . cos ( x ) ) ;
Ausgabe:
-0.2 -0.19866933079506122 0.9800665778412416-0.1 -0.09983341664682815 0.99500416527802580.0 0.0 1.00.1 0.09983341664682815 0.99500416527802580.2 0.19866933079506122 0.98006657784124160.30000000000000004 0.2955202066613396 0.9553364891256060.4 0.3894183423086505 0.92106099400288510.5 0.479425538604203 0.87758256189037280.6 0.5646424733950354 0.82533561490967830.7 0.644217687237691 0.76484218728448850.7999999999999999 0.7173560908995227 0.69670670934716550.8999999999999999 0.7833269096274833 0.62160996827066450.9999999999999999 0.8414709848078964 0.5403023058681398
7 / 22
![Page 8: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/8.jpg)
Gliederung
1 Uberblick
2 Nachteile von println
3 Formatierte Ausgabe
4 Weitere Formatvarianten
8 / 22
![Page 9: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/9.jpg)
Formatierte Ausgabe
Mit der Methode System.out.printf() konnen Ergebnisseformatiert ausgegeben werden. Gleichbedeutend istSystem.out.format().
SyntaxSystem.out.printf ( Formatstring, Ausdrucke )
• Die Ausdrucke steht fur eine durch Komma getrennte Listevon Ausdrucken beliebigen Typs, die ausgegeben werdensollen – z.B. Variablen.
• Der Formatstring enthalt Formatangaben der Form %d, %f,%e, %s, usw.
• Die Formatangaben werden in der angegebenenReihenfolge zur Formatierung der Ausdrucke verwendet.
9 / 22
![Page 10: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/10.jpg)
Formatierte Ausgabe
Bedeutung der Formatangaben:%d ganze Dezimalzahl%e Gleitkommazahl im Gleitkommaformat (mit Exponent)%f Gleitkommazahl im Festkommaformat (ohne Exponent)%s String
Regeln fur die formatierte Ausgabe:• Der restliche Formatstring wird als Text ausgegeben.• Achtung: die auszugebenden Werte sind durch Komma
getrennt, nicht durch +.• Achtung: das Zeilenende (entsprechend println) muss
durch \n im Formatstring angegeben werden.• Falls zu wenige Formatangaben vorliegen, werden nur die
ersten Ausdrucke ausgegeben.• Falls zu viele oder falsche Formatangaben vorliegen, wird
ein Fehler gemeldet.10 / 22
![Page 11: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/11.jpg)
Formatierte Ausgabe – double im Gleitkommaformat
Beispiel: Funktionstabelle ausgeben
for ( double x=−0.2; x<1; x +=0.1)System . out . p r i n t f ( ”%e %e %e\n ” ,
x , Math . s in ( x ) , Math . cos ( x ) ) ;
Ausgabe:
-2.000000e-01 -1.986693e-01 9.800666e-01-1.000000e-01 -9.983342e-02 9.950042e-010.000000e+00 0.000000e+00 1.000000e+001.000000e-01 9.983342e-02 9.950042e-012.000000e-01 1.986693e-01 9.800666e-013.000000e-01 2.955202e-01 9.553365e-014.000000e-01 3.894183e-01 9.210610e-015.000000e-01 4.794255e-01 8.775826e-016.000000e-01 5.646425e-01 8.253356e-017.000000e-01 6.442177e-01 7.648422e-018.000000e-01 7.173561e-01 6.967067e-019.000000e-01 7.833269e-01 6.216100e-011.000000e+00 8.414710e-01 5.403023e-01
11 / 22
![Page 12: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/12.jpg)
Formatierte Ausgabe – double im Festkommaformat
Beispiel: Funktionstabelle ausgeben
for ( double x=−0.2; x<1; x +=0.1)System . out . p r i n t f ( ”%f %f %f \n ” ,
x , Math . s in ( x ) , Math . cos ( x ) ) ;
Ausgabe:
-0.200000 -0.198669 0.980067-0.100000 -0.099833 0.9950040.000000 0.000000 1.0000000.100000 0.099833 0.9950040.200000 0.198669 0.9800670.300000 0.295520 0.9553360.400000 0.389418 0.9210610.500000 0.479426 0.8775830.600000 0.564642 0.8253360.700000 0.644218 0.7648420.800000 0.717356 0.6967070.900000 0.783327 0.6216101.000000 0.841471 0.540302
12 / 22
![Page 13: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/13.jpg)
Formatierte Ausgabe – Beispiel String
Beispiel
System . out . p r i n t f ( ” Dies %seine%s\n ” ,” i s t ” , ” Ze i l e ! ” ) ;
Ausgabe:
Dies ist eine Zeile!
Beachte:• Mischung von Formatstring und den nachfolgenden
auszugebenden Strings,• Ausgabe der Leerzeichen in Formatstring oder auszugebendem
String,• kein Leerzeichen zwischen "%s" und "eine",• explizite Ausgabe des Zeilenendes.
13 / 22
![Page 14: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/14.jpg)
Gliederung
1 Uberblick
2 Nachteile von println
3 Formatierte Ausgabe
4 Weitere Formatvarianten
14 / 22
![Page 15: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/15.jpg)
Weitere Formatvarianten: Angabe der Zeichenzahl
• Zahlangabe zwischen % und dem Buchstaben: Anzahl derauszugebenden Zeichen.
• Falls die Zeichenzahl nicht ausreicht, wird sie erhoht.
Beispiele unterschiedliche Breite
System . out . p r i n t f ( ”%4d\n ” , 123) ;System . out . p r i n t f ( ”%5d\n ” , 123) ;System . out . p r i n t f ( ”%2d\n ” , 123) ;
Ausgabe:
123123
123
15 / 22
![Page 16: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/16.jpg)
Weitere Formatvarianten – Beispiel double
Beispiele unterschiedliche Breite
System . out . p r i n t f ( ”%10e\n ” , 123.456) ;System . out . p r i n t f ( ”%15e\n ” , 123.456) ;System . out . p r i n t f ( ”%10f \n ” , 123.456) ;System . out . p r i n t f ( ”%15f \n ” , 123.456) ;
Ausgabe:
1.234560e+021.234560e+02
123.456000123.456000
16 / 22
![Page 17: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/17.jpg)
Weitere Formatvarianten: Darstellung des Vorzeichens
• Leerzeichen nach %: positives Vorzeichen wird alsLeerzeichen ausgegeben.
• Pluszeichen nach %: positives Vorzeichen wird alsPluszeichen ausgegeben.
Unterschiedliche Vorzeichen
System . out . p r i n t f ( ”%3d\n ” , 123) ;System . out . p r i n t f ( ”% 3d\n ” , 123) ;System . out . p r i n t f ( ”% 3d\n ” , −123);System . out . p r i n t f ( ”%+3d\n ” , 123) ;
Ausgabe:
123123
-123+123
17 / 22
![Page 18: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/18.jpg)
Darstellung des Vorzeichens – double
Unterschiedliche Vorzeichen
System . out . p r i n t f ( ”% 10e\n ” , 123.456) ;System . out . p r i n t f ( ”% 10e\n ” , −123.456);System . out . p r i n t f ( ”%+10e\n ” , 123.456) ;System . out . p r i n t f ( ”% 10 f \n ” , 123.456) ;System . out . p r i n t f ( ”% 10 f \n ” , −123.456);System . out . p r i n t f ( ”%+10f \n ” , 123.456) ;
Ausgabe:
1.234560e+02-1.234560e+02+1.234560e+02123.456000
-123.456000+123.456000
18 / 22
![Page 19: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/19.jpg)
Weitere Formatvarianten: Nachkommastellen beidouble
• Zwei Zahlangaben n.m nach %:• n = Gesamtzahl der auszugebenden Zeichen,• m = Zahl der Nachkommastellen.
Unterschiedliche Nachkommastellen
System . out . p r i n t f ( ” %10.3e\n ” , 123.456) ;System . out . p r i n t f ( ” %10.4e\n ” , 123.456) ;System . out . p r i n t f ( ” %10.2e\n ” , 123.456) ;
Ausgabe:
1.235e+021.2346e+02
1.23e+02
19 / 22
![Page 20: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/20.jpg)
Weitere Formatvarianten: Nachkommastellen beidouble
Unterschiedliche Nachkommastellen
System . out . p r i n t f ( ” %10.3 f \n ” , 123.456) ;System . out . p r i n t f ( ” %10.4 f \n ” , 123.456) ;System . out . p r i n t f ( ” %10.2 f \n ” , 123.456) ;System . out . p r i n t f ( ” %10.1 f \n ” , 123.456) ;System . out . p r i n t f ( ” %8.3 f \n ” , 123.456) ;
Ausgabe:
123.456123.4560123.46123.5
123.456
20 / 22
![Page 21: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/21.jpg)
Beispiel: Festkommaformat mit Vorzeichen
Beispiel Funktionstabelle ausgeben
for ( double x=−0.2; x<1; x +=0.1)System . out . p r i n t f ( ”% 10.7 f % 10.7 f % 10.7 f \n ” ,
x , Math . s in ( x ) , Math . cos ( x ) ) ;
Ausgabe:
-0.2000000 -0.1986693 0.9800666-0.1000000 -0.0998334 0.99500420.0000000 0.0000000 1.00000000.1000000 0.0998334 0.99500420.2000000 0.1986693 0.98006660.3000000 0.2955202 0.95533650.4000000 0.3894183 0.92106100.5000000 0.4794255 0.87758260.6000000 0.5646425 0.82533560.7000000 0.6442177 0.76484220.8000000 0.7173561 0.69670670.9000000 0.7833269 0.62161001.0000000 0.8414710 0.5403023
21 / 22
![Page 22: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/22.jpg)
Beispiel: Gleitkommaformat mit Vorzeichen
Beispiel Funktionstabelle ausgeben
for ( double x=−0.2; x<1; x +=0.1)System . out . p r i n t f ( ”% 14.7e % 14.7e % 14.7e\n ” ,
x , Math . s in ( x ) , Math . cos ( x ) ) ;
Ausgabe:
-2.0000000e-01 -1.9866933e-01 9.8006658e-01-1.0000000e-01 -9.9833417e-02 9.9500417e-010.0000000e+00 0.0000000e+00 1.0000000e+001.0000000e-01 9.9833417e-02 9.9500417e-012.0000000e-01 1.9866933e-01 9.8006658e-013.0000000e-01 2.9552021e-01 9.5533649e-014.0000000e-01 3.8941834e-01 9.2106099e-015.0000000e-01 4.7942554e-01 8.7758256e-016.0000000e-01 5.6464247e-01 8.2533561e-017.0000000e-01 6.4421769e-01 7.6484219e-018.0000000e-01 7.1735609e-01 6.9670671e-019.0000000e-01 7.8332691e-01 6.2160997e-011.0000000e+00 8.4147098e-01 5.4030231e-01
22 / 22
![Page 23: Einstieg in die Informatik mit Java - math.kit. · PDF fileEinstieg in die Informatik mit Java Formatierte Ausgabe Gerd Bohlender Institut fur Angewandte und Numerische Mathematik¨](https://reader035.fdocument.pub/reader035/viewer/2022062504/5a78be2d7f8b9a70238bc7d9/html5/thumbnails/23.jpg)
Weitere Informationen
Weitere Informationen zu printf und den Formatangabenfinden Sie in der Java-Online-Dokumentation unter• http://www.j2ee.me/javase/6/docs/api/java/io/PrintStream.html
• http://www.j2ee.me/javase/6/docs/api/java/util/Formatter.html#syntax
23 / 22