Die Webseiten der Fachschaft Informatik am ERG Saalfeld
Ordnen
Es soll ein Programm erstellt werden, das folgende Aufgabe löst:
- Die Inhalte der Variablen x und y sind als Parameter zu übergeben.
- Die Variablen sind auszugeben.
- Dann sollen die Zahlen geordnet werden, wobei die größte Zahl zuerst kommt.
- Die geordneten Werte sind auszugeben.
Programm
#!/usr/bin/perl
use strict;
use warnings;
# Ueberschrift
print "\n";
print " Zahlen ordnen \n";
print " ============= \n";
print "\n";
# das Einlesen der Parameter
my $x = $ARGV[0]; # damit steht der erste Parameter in $x
my $y = $ARGV[1]; # damit steht der zweite Parameter in $y
my $help; # Variable wird angelegt
# die 1. Ausgabe
print '$x = ', $x, "\n";
print '$y = ', $y, "\n";
print "\n"; # eine Leerzeile
# wenn in der falschen Reihenfolge
if ($x < $y) {
# dann tauschen
$help = $x;
$x = $y;
$y = $help;
}
# die 2. Ausgabe
print "geordnet \n";
print "\n";
print '$x = ', $x, "\n";
print '$y = ', $y, "\n";
__END__
Der Aufruf sah bei mir so aus:
Aufgaben
- Bringen Sie das Programm zum Laufen.
- Rufen Sie das Programm mit anderen Parametern auf.
- Rufen Sie das Programm ohne Parameter bzw. mit einem Parameter auf.
- Zeichnen Sie zu diesem Programm ein Struktogramm.
Wertbelegungstabelle
Es soll jetzt eine Wertbelegungstabelle für den Aufruf des Programms mit perl ordnen.pl 120 200 erstellt werden.
Es werden dabei nur die Zeilen / Aktionen betrachtet, wo sich Variableninhalte ändern. Das bedeutet, dass Ausgabeaktionen hier
nicht beachtet werden.
Aktion |
$x |
$y |
$help |
Aufruf von "perl ordnen.pl 120 200" |
120 |
200 |
--- |
if ($x < $y) |
120 |
200 |
--- |
$help = $x; |
120 |
200 |
120 |
$x = $y; |
200 |
200 |
120 |
$y = $help; |
200 |
120 |
120 |
zurück
© ERG Saalfeld - Hans-Dietrich Kirmse 8.01.2015
|