NF 1, SS 1997: Lösungsblatt 6: Endliche Automaten
Aufgabe 1: Reguläre Ausdrücke
In dieser Aufgabe geht es darum, die Übergenerierung von regulären
Ausdrücken zu beobachten. Dazu ist unter ...
Lösung hierzu
Aufgabe 2: Reguläre Grammatiken
Schreiben Sie für einen der regulären Ausdücke aus Aufgabe
Eins eine Grammatik.
Lösung hierzu
Aufgabe 3: ASCII-Datenbanken
Lösung hierzu
- Wieviele Mitarbeiter hat jede Abteilung?
cut -f5 -d' ' | sort | uniq -c
179 A1, 167 A2, 147 B1, 170 K3, 163 U2, 174 X1,
- Wieviele Mitarbeiter jeder Abteilung verdienen mindestens DM 60000?
cut -f5,6 -d' ' db | grep ' [6-9][0-9]\{4\}' | cut -f 1 -d' ' | sort
| uniq -c
69 A1, 71 A2, 55 B1, 70 K3, 58 U2, 66 X1,
- Wieviele Mitarbeiter jeder Abteilung gehen bis nächstens Jahr
in den Ruhestand (Rentenalter Frauen: 62, Männer: 65)?
cut -f3-5 -d' ' db | egrep '(m 6[45])|(w 6[12])' | cut -f3 -d' ' |
sort | uniq -c
10 A1, 11 A2, 8 B1, 4 K3, 6 U2, 10 X1,
- Wieviele vom Kern her unterschiedlichen Familien gibt es? gehen Sie
davon aus, daß Schreibvarianten eine identische Herkunft haben.
cut -f1 -d' ' db | sort -u ergibt, daß folgende Familiennamen
vorhanden sind:
Fassbinder, Glueck, Hasenfuss, Mayer, Meier, Menzel, Meyer, Mueller, Schmid,
Schmidt.
Ein regulärer Ausdruck, der die Anzahl der Meier's mit unterschiedlicher
Schreibweise heraussucht, könnte so aussehen:
cut -f1 -d' ' db | grep 'M[ae][yi]er' | wc -l