ein Kapitel zurück                                           ein Kapitel weiter

Wie man Daten mit print ausgeben kann haben sie bereits schon gesehen. Da sie im Kapitel zuvor gelernt haben das man zum Daten Eingeben den Handle STDIN benötigt gibt es für die Ausgabe den Handle STDOUT. Somit könnten sie die Daten auch Ausgeben a la.........


print STDOUT "Eine Weitere Möglichkeit zur Ausgabe\n";    


Aber da eh meistens auf der Konsole etwas ausgegeben hat man diese
Schreibweise......


print "Eine Weitere Möglichkeit zur Ausgabe\n";   


....so implementiert damit automatisch auf STDOUT geschrieben wird.

Kommen wir nun zu den Möglichkeiten wie sie mit print Variablen auf dem Bildschirm ausgeben können......

#!/usr/bin/perl -w

print $variable=100;
print $variable, "\n";
print "Der Wert dieser Variable beträgt ", $variable, "\n";
print "Eine weitere Möglichkeit zu Ausgabe von $variable \n";


Wollen wir nun folgendes Programm ausführen..........


#!/usr/bin/perl -w

$laenge=0;
$breite=0;
$gesamt=0;

print "\nBerrechnung von rechteckige Flaechen\n";
print "---------------------------\n";

print "\n", "Bitte geben sie die Laenge ein : ";
chomp($laenge=<STDIN>);

print "\n", "Bitte geben sie die Breite ein : ";
chomp($breite=<STDIN>);

$gesamt=$laenge*$breite;
print "\nDie Flaechen-Berrechnung von $laenge * $breite beträgt $gesamt \n";


Nebenbei wird in diesem Programm alles erlernte mal getestet. Wenn sie in diesem Programmbeispiel 10.55 für $laenge und und 1.33 für $breite eingeben bekommen sie das Ergebnis 14.0315
Wenn sie so eine genaue Zahl nicht benötigen sondern nur die letzten 2 Ziffern nach dem Komma dann benötigen wir eine Möglichkeit zu formatierten Ausgabe. Und dafür gibt es, für C-Programmierer bekannte, printf. Mit printf sind wir nun in der Lage unsere Zeichen formatiert auf dem Bildschirm auszugeben. Schauen wir uns nun was für Formate wir dazu zur Verfügung haben....

  • %c - einzelnes Zeichen ('a', 'b', '1', '2'...........)
  • %s - String ("Ganzer String")
  • %d - Ganzzahl (1234, 32453, 21123, ..........)
  • %f - Gleitkommazahl (23.3333, 334.3334, 3.14223, ..........)
  • %e - Gleitkommazahl in Exponentialschreibweise (1e2.23, 2e.21, ......)
  • %o - oktale Zahlen (0123, 0644, 0777, .........)
  • %x - hexdezimale Ganzzahl (0xff, 0x12, 0x1f, .......)
  • %% - Ausgabe des Prozentzeichens

...ändern sie nun unsere print - Anweisung zur Ausgabe des Ergebnisses um in.....


printf "\nDie Flaechen-Berrechnung von %f * %f beträgt %f \n"
        ,$laenge,$breite,$gesamt;



Mit den drei Platzhaltern %f wollen wir drei Gleitkommazahlen formatiert auf dem Bildschirm ausgeben. Unsere Variablen kommen am Ende hinter dem zwischen  Gänsefüßchen stehenden Text in der selben Reihenfolge wie sie die Ausgabe auf dem Text haben wollen.
Wenn sie das Programm jetzt erneut ausführen werden sie bemerken das immer 6 Stellen nach dem Komma mitausgegeben werden. Ob sie jetzt Gleitkommazahlen oder  Ganzzahlen eingegeben haben. Daher benötigen wir nun Formatierungen unserer Formate. Folgende Möglichkeiten haben wir da......

  • + - Zahlen immer mit Vorzeichen ("%+f", "%+d", ....)
  • - - linksbündige Ausrichtung ("%-f", "%-d", ....)
  • n - Breitenangabe des Feldes ("%5f", "%4d", ...)
  • # - Präfix 0 oder 0x für otakle bzw. hexdezimale Zahlen ("%#o", "%#x")
  • .n - Anzahl Zahlen nach dem Komma ("%.2f", "%.1e", ....)



Ergänzen wir nun unser printf - Anweisung nochmals.........


printf "\nDie Flaechen-Berrechnung von %.2f * %.2f beträgt %.2f \n"
         ,$laenge,$breite,$gesamt;

Jetzt werden nur noch 2 Stellen nach dem Komma ausgegeben. Was nicht heißt des das Ergebnis intern nur noch 2 Stellen nach dem Komma lang ist! Hier geht es nur um die formatierte Ausgabe. Wir kommen noch öfters auf die Verschiedenen Formatierungen in der Praxis zurück.

ein Kapitel zurück          nach oben           ein Kapitel weiter


© 2001,2002 Jürgen Wolf