<< Übung 10 | Übungen | Übung 12 >> |
Ich habe hier eine Sammlung von Aufgaben aus den vorangegangenen Übungen erstellt. Diese Aufgaben sind als Vorbereitung für die Klausur gut geeignet. Jeder kann selbst entscheiden, welche Aufgaben er machen will - es können auch andere aus den Übungen vorher sein. (Es gibt keine Punkte!) Jeder weiß selbst am besten, wo er noch Schwierigkeiten hat ... also nicht die Aufgaben machen, die man sowieso beherrscht, sondern die, bei denen man unsicher ist.
Die Themen, die ich für wichtig halte und auch in der Klausur geprüft werden, sind: Arrays, Hashes, reguläre Ausdrücke.
1. (String) Schreiben Sie ein Programm concStr10.pl, das zwei Strings einliest und diese zu einem String verknüft, letzteren verzehnfacht und dann ausgibt.
2. (Schleife) Schreiben Sie ein Programm sqrSum.pl, das zu einer anzugebenden Zahl n alle Quadratzahlen von 1 bis n berechnet, diese aufsummiert und ausgibt in der Form 1 + 4 + 9 = 14. (Hilfe)
3. (Array) Schreiben Sie ein Programm scalarProd.pl, das zwei Vektoren in jeweils ein Array einliest und deren Skalarprodukt berechnet.
4. (Array, Schleife) Schreiben Sie ein Programm divideNumbers.pl, das beliebig viele Zahlen in ein Array einliest (while-Schleife, Abbruch mit q). Verteilen Sie die Zahlen auf vier Arrays nach folgenden Kriterien:
Anschließend sollen die Arrays ausgegeben werden.
5. (Hash) Schreiben Sie ein Programm countWords.pl, das Wörter von der Tastatur einliest und diese zählt. Geben Sie die Wörter alphabetisch sortiert (Hilfe) und deren Anzahl (Hilfe) aus. Der Einlesevorgang soll mit einer leeren Eingabe (Hilfe) abgebrochen werden.
6. (Hash) Schreiben Sie ein Programm hexColor.pl, das den Hexadezimal-Code einer RGB-Farbe ausgibt. Eingabe soll eine Farbe sein - z. B.: red - und deren Ausgabe ein Hexadezimal-Code - im Beispiel: #FF0000 - sein. Es soll solange nach einer Farbe gefragt werden, bis ein 'q' eingegeben wird (Hilfe). Falls eine Falscheingabe gemacht wurde, dann soll das Programm das erkennen und sagen, dass diese Farbe nicht existiert. Zusätzlich zur Fehlermeldung soll es alle möglichen Farbnamen, die das Programm kennt, alphabetisch sortiert anzeigen. Die Farben sollen im Programm in einem Hash gespeichert werden (Hilfe).
Farbe | Hex-Code | |
black | #000000 | |
red | #FF0000 | |
yellow | #FFFF00 | |
blue | #0000FF | |
white | #FFFFFF | |
brown | #A52A2A | |
orange | #FFA500 | |
green | #008000 |
7. (Filehandle, @ARGV) Schreiben Sie ein Programm kopie.pl, das eine Datei kopiert. Als Parameter sollen die beiden Dateinamen angegeben werden. Wird zusätzlich eine Option -a übergeben, soll angehängt statt kopiert werden. Der Aufruf am Betriebssystem heißt:
bzw.
Macht man folgenden Aufruf:
soll eine kleine Hilfe zum Programm kopie.pl angezeigt werden.
Die Parameter, die auf der Betriebssystemebene übergeben werden (das sind die beiden Dateinamen Datei1 und Datei2), sind im Perlprogramm über das Perlspezialarray @ARGV verfügbar (Hilfe).
8. (reguläre Ausdrücke) Schreiben Sie ein Program testRegExpr.pl, das von der Standardeingabe einen String einliest und diesen auf folgende Inhalte testet:
Für jeden der obigen Tests soll eine Meldung ausgegeben werden, falls der Test erfolgreich war.
9. (reguläre Ausdrücke) Schreiben Sie ein Programm chtable.pl, das alle HTML-Tags der Art <table umwandelt in <TABLE. Das Programm soll folgendes enthalten:
10. (reguläre Ausdrücke) Schreiben Sie ein Programm getWords.pl, das alle Wörter (bestehend aus Buchstaben, Zahlen und _ ausgibt) in einer Datei ausgibt.
Die aktuelle Seite (Ue11.htm) bitte speichern auf der Festplatte und daran austesten.
11. (reguläre Ausdrücke) Erstelle ein Programm getPoints.pl, das aus dem File points.txt die wichtigen Informationen ausliest. Das sind Emailadresse, Name und Matrikelnummer, die einzelnen Summen. Dies Informationen sollen auf den Standardbildschirm gegeben werden. Ferner soll die Gesamtpunktzahl angegeben werden. Der Programmaufruf soll lauten:
12. (reguläre Ausdrücke) Erstellen sie reguläre Ausdrücke zu folgenden Suchproblemen:
Um zu testen, ob die regulären Ausdrücke funktionieren, schreiben sie ein Programm testRegExp2.pl: Lesen Sie damit von der Standardeingabe ein und testen Sie die Ausdrücke am Eingabestring.
13. (reguläre Ausdrücke, Hash) Erstellen Sie ein Programm counter.pl, das Zugriffe für eine bestimmte Seite zählt und speichert. Gespeichert wird im File access.nmb. Der Aufbau dieser Datei soll folgendermaßen aussehen:
Das heißt das Format einer Zeile ist:
Wenn das Programm aufgerufen wird, soll es im Einzelnen folgendes machen:
Die Ergebnisse schicken Sie bitte an Perl, Lehrstuhl Mathe II, Uni Bayreuth.
<< Übung 10 | Übungen | Übung 12 >> |
© 2001-2003 Perl, Lehrstuhl Mathe II, Uni Bayreuth |