Übung 13 1. Schreibe ein Programm read_A.pl, das ein zweidimensionales Array aus der Standardeingabe liest. Lese zuerst die Dimensionen des Arrays ein und dann das Array selbst. 2. Schreibe ein Programm mult_vA.pl, das einen Vektor mit einem zweidimensionalen Array multipliziert. Lese zuerst die Dimension des Vektors und den Vektor selbst ein, anschließend die fehlende Dimension des Arrays und das Array selbst. Ein Beispiel: / \ | 1 3 5 7 | (1, 2, 3) * | 3 3 1 2 | = | 7 5 4 3 | \ / (1*1+2*3+3*7, 1*3+2*3+3*5, 1*5+2*1+3*4, 1*7+2*2+3*3) = (28, 24, 19, 20) 3. Schreibe ein Programm sort_A.pl, das die Zeilen eines zweidimensionalen Arrays sortiert. Die Größe, die verglichen werden soll, ist die Summe der Quadrate der Elemente einer Zeile. Zum Beispiel (aus Aufgabe 2): Zeile 1: 1*1+3*3+5*5+7*7=84 Zeile 2: 3*3+3*3+1*1+2*2=14 Zeile 3: 7*7+5*5+4*4+3*3=99 Sortierung: Zeile 2 (14), Zeile 1 (84), Zeile 3 (99) Lese zuerst die Dimensionen der Matrix ein und anschließend die Matrix selbst. Als Ausgabe soll die Matrix sortiert ausgegeben werden. Zur Sortierung soll sort-Befehl verwendet. Die dafür verwendete Vergleichsfunktion muss entsprechend angepasst werden. (Zur Info: Das ist nicht die beste und schnellste Lösung.) Übung 14 1. Schreibe ein Programm sort_fA.pl, das die Zeilen eines zweidimensionalen Arrays sortiert. Die Größe, die verglichen werden soll, ist die Summe der Quadrate der Elemente einer Zeile. Vergleiche Aufgabe 3 aus Übung 12. Auch hier soll der sort-Befehl - jedoch kombiniert mit der map-Funktion - verwendet werden. Es soll damit erreicht werden, dass die Summe der Quadrate für jede Zeile nur einmal berechnet wird. 2. Schreibe ein Programm countWords.pl, das die Wörter eines Files zählt (mit Hash lösen) und alle Wörter ausgibt, die öfter als 5 mal vorkommen. Die Ausgabe soll sortiert sein nach der Zahl des Vorkommens. Verwende grep und map.