Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Tjark Heifner Geändert vor über 9 Jahren
1
1 Lösung Hausaufgabe 5-1 Seite 1 #!perl -w # Datei Oeffnen und Variablen initialisieren $infile = "daten5-3.txt"; $im=$iw=$sm=$sw=0; open (IN,$infile) || die "Oeffnen: $infile $!"; # Datei einlesen while ( ){ ($name,$vorname,$geschlecht,$alter)=split(/\//); if ($geschlecht eq 'm') { $im++; $sm+=$alter; if (exists($m{$name})){die " Nachname doppelt "}; $m{$name}=$alter; }
2
2 Lösung Hausaufgabe 5-1 Seite 2 elsif ($geschlecht eq 'w') { $iw++; $sw+=$alter; if (exists($w{$name})){die " Nachname doppelt "}; $w{$name}=$alter; } else {die "Falsches Geschlecht"}; } close (IN);
3
3 Lösung Hausaufgabe 5-1 Seite 3 #Durchschnitte berechnen $dm=$sm/$im; print "Altersdurchschnitt maennlich: $dm\n"; $dw=$sw/$iw; print "Altersdurchschnitt weiblich: $dw\n"; # Sortieren und Ausgeben @a=sort(keys(%m)); foreach $name (@a){ $abw=$m{$name}-$dm; print "$name Abweichung: $abw\n"; } @a=sort(keys(%w)); foreach $name (@a){ $abw=$w{$name}-$dw; print "$name Abweichung: $abw\n"; }
4
4 Ausgabe: Lösung Hausaufgabe 5-1 Name "main::vorname" used only once: possible typo at test.pl line 8. Altersdurchschnitt maennlich: 21.75 Altersdurchschnitt weiblich: 32 Meier Abweichung: -9.75 Mueller Abweichung: 8.25 Schmidt Abweichung: -1.75 Schreiber Abweichung: 3.25 Becker Abweichung: 22 Merkel Abweichung: -17 Schroeder Abweichung: -5
5
5 Lösung 6-1 #!perl -w if (@ARGV){ foreach $arg (@ARGV){ print "Hallo $arg\n"; } else{ print "Hallo Ihr da!\n"; }
6
6 Lösung 6-2a #!perl -w print "Geben Sie Ihren Namen ein"; $name= ; print "Geben Sie Ihr Geburtsdatum ein"; $geburt= ; print <<BLA; Ihr Name ist: $name Ihr Geburtsdatum ist: $geburt BLA
7
7 Lösung 6-2b #!perl -w print "Geben Sie Ihren Namen ein"; $name= ; print "Geben Sie Ihr Geburtsdatum ein"; $geburt= ; print <<BLA; Ihr Name ist: ${name}Ihr Geburtsdatum ist: $geburt BLA
8
8 Lösung 6-3 if (@ARGV){ foreach $arg (@ARGV){ if (defined($ENV{$arg})){ print "$arg = $ENV{$arg}\n";} else{ print "$arg nicht gefunden\n"}}} else{ foreach $arg (keys(%ENV)){ print "$arg = $ENV{$arg}\n"}}
9
9 Lösung 6-4 Seite 1 #! perl -w $file = "daten6-1.txt"; sub gross{ my $gr=$_[0]; $gr =~ tr/a-z/A-Z/; print $gr; }
10
10 Lösung 6-4 Seite 2 open(XYZ,$file) || die "Oeffnen misslungen $file $!"; while ($text= ){ &gross($text); print $text; } close(XYZ);
11
11 Lösung 6-5 Seite 1 sub maximum{ my $m; if ($_[0] > $_[1]){ $m=$_[0]; } else{ $m=$_[1]; }
12
12 Lösung 6-5 Seite 2 if ($#_ > 1 ) { $m=&maximum($m,@_[2..$#_]) } return $m; } print &maximum(14,27,19,32,12)
13
13 Lösung 6-6a sub fak{ my ($a,$b,$c); if ($_[0] > 1){ $a=$_[0]-1; $b=$_[0]; $c=$b*&fak($a); return $c; } else {return 1} } $x= ; chomp($x); print "$x Fakultaet = ",&fak($x);
14
14 Lösung 6-6b sub fak{ my ($a,$b,$c); if ($_[0] > 1){ $a=$_[0]-1; $b=$_[0]; $c=$b*&fak($a); } else {$c=1} return $c# besser nur ein Ausgang }# aus einem Unterprogramm $x= ; chomp($x); print "$x Fakultaet = ",&fak($x);
15
15 Nachschlag Lösung zu 6-1 #! perl -w sub hallo{ foreach $abc(@_){ print "Hallo $abc\n"; } if (@ARGV){&hallo(@ARGV)} else {&hallo("Ihr da")};
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.