Lösungen zu den Übungen in Kapitel 14

  1. So könnte eine mögliche Lösung aussehen:

    my @zahlen;
    push @zahlen, split while <>;
    foreach (sort { $a <=> $b } @zahlen) {
      printf "%20g\n", $_;
    }

    Kommt Ihnen die zweite Zeile zu verwirrend vor? Das haben wir mit Absicht gemacht. Auch wenn wir Ihnen empfehlen, klar verständlichen Code zu schreiben, gibt es Leute, die ihre Programme gern so schwer verständlich wie möglich gestalten.[422] Daher möchten wir, dass Sie auf das Schlimmste vorbereitet sind. Irgendwann werden auch Sie einmal mit so verwirrendem Code wie dem obenstehenden arbeiten müssen.

    Der while-Modifier in der betreffenden Zeile hat die gleiche Bedeutung wie die folgende Schreibweise:

    while (<>) {
      push @zahlen, split;
    }

    Das ist zwar schon besser, aber ...

Get Einführung in Perl, Sixth Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.