This shows you the differences between two versions of the page.
kurs:sort.pl [2014/09/10 21:22] |
kurs:sort.pl [2014/09/10 21:22] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | <code> | ||
+ | use strict; | ||
+ | use warnings; | ||
+ | my %teilnehmer = ( | ||
+ | guenther => 27, | ||
+ | christian => 22, | ||
+ | mario => 26, | ||
+ | martin => 26, | ||
+ | joachim => 30, | ||
+ | rudi => 23, | ||
+ | fritz => 50, | ||
+ | dennis => 39, | ||
+ | daniel => 21, | ||
+ | ); | ||
+ | |||
+ | my @tn = keys %teilnehmer; | ||
+ | my @alter = values %teilnehmer; | ||
+ | |||
+ | my $i=0; | ||
+ | foreach (sort {$a <=> $b} @alter) { | ||
+ | printf "%s: %s\n", ++$i, $_; | ||
+ | } | ||
+ | |||
+ | my $i=0; | ||
+ | foreach ( | ||
+ | sort {substr($a,1,1) cmp substr($b,1,1)} | ||
+ | @tn) { | ||
+ | printf "%s: %s\n", ++$i, $_; | ||
+ | } | ||
+ | |||
+ | my @namen = sort | ||
+ | {$teilnehmer{$a} <=> $teilnehmer{$b}} | ||
+ | keys %teilnehmer; | ||
+ | |||
+ | my $i=0; | ||
+ | foreach (@namen) { | ||
+ | printf "%s: %s %s\n", | ||
+ | ++$i, $_, $teilnehmer{$_}; | ||
+ | } | ||
+ | |||
+ | </code> |