Klausur Teilgebiet: Digitale Informationsverarbeitung

Werbung
Prof. Dr. Volker Gruhn
22. Juli 2003
Klausur
Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
Hinweise
•
Bevor Sie mit der Bearbeitung der Aufgaben beginnen, müssen Sie auf allen Blättern
Ihren Namen und Ihre Matrikelnummer eintragen.
•
Der Klausurtext enthält ausreichend Platz zur Lösung der Aufgaben. Sie können auch die
Rückseiten der Blätter für Ihre Lösungen nutzen. Sofern Sie zusätzliches Papier
benötigen, wenden Sie sich an die Aufsicht. Die Nutzung eigenen Papiers ist nicht
gestattet.
•
Sollte Ihre Lösung nicht unmittelbar unter oder neben der Aufgabenstellung stehen,
machen Sie bitte einen entsprechenden Hinweis. Streichen Sie diejenigen Teile der von
Ihnen geschriebenen Texte deutlich durch, die nicht in die Bewertung eingehen sollen.
•
Die Klausur ist zusammengeheftet. Die Heftung darf nicht geöffnet werden.
•
Die Aufsicht gibt Ihnen keine Hilfestellung beim Lösen der Aufgaben.
•
Teilnehmer, die eine Klausur nur über ein Teilgebiet schreiben, müssen zum Bestehen
mindestens 24 Punkte erreichen. Maximal können 60 Punkte erreicht werden.
•
Teilnehmer, die eine Klausur über beide Teilgebiete schreiben, müssen zum Bestehen
in beiden Teilgebieten jeweils mindestens 24 Punkte erreichen. Maximal können
jeweils 60 Punkte erreicht werden
Viel Erfolg!
Aufgabe Erreichte Punkte Erreichbare Punkte
1
9
2
16
3
5
4
16
5
7
6
7
Summe
60
Lehrstuhl für Angewandte Telematik / e-Business, Institut für Informatik, Universität Leipzig
Klostergasse 3, D-04109 Leipzig • http://www.lpz-ebusiness.de
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
Aufgabe 1: Maschinennahe Darstellung von Informationen
Bei der maschinennahen Darstellung von Informationen wird häufig eine 2-wertige
Darstellung auf Basis von 0-1-Folgen angenommen. Es ist aber auch möglich,
Informationen in einer 3-wertigen Darstellung zu kodieren und in Folgen aus den
Ziffern 0, 1 und 2 abzubilden.
a) Geben Sie folgenden Informationsmengen in 2- und 3-wertiger Kodierung an.
[2 Punkte]
Informationsmenge
2-wertige Darstellung 3-wertige Darstellung
{Nord, West, Süd, Ost}
{0, 1, 2, 3, 4, 5}
{wahr, falsch}
{Hund, Katze, Maus}
22. Juli 2003
Seite 2 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
b) Geben Sie die Größe der jeweils maximal darstellbaren Informationsmenge an,
die in 2- und 3-wertiger Darstellung mit einer Folge der Länge 5 kodierbar ist.
[1 Punkt]
22. Juli 2003
Seite 3 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
c) Bilden Sie die unten in 2- bzw. 3-wertiger Darstellung angegebenen Zahlen in die
jeweils andere Darstellung ab. [4 Punkte]
2-wertige Darstellung 3-wertige Darstellung
22222
1001
22. Juli 2003
Seite 4 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
d) Addieren Sie die Zahlen 1111111 und 11010 in 2-wertiger Darstellung. Addieren
Sie die Zahlen 11201 und 222 in 3-wertiger Darstellung. [2 Punkte]
22. Juli 2003
Seite 5 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
Aufgabe 2: Boolesche Algebra
a) Seien x, y und z boolesche Variablen. Definieren Sie formal mit Hilfe dieser
Variablen die Begriffe „Idempotenz“, „Kommutativität“, „Assoziativität“,
„Absorption“ und „Distributivität“. [5 Punkte]
22. Juli 2003
Seite 6 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
b) Definieren Sie die Begriffe „boolescher Term“, „Literal“ und „Monom“. [3 Punkte]
22. Juli 2003
Seite 7 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
c) Geben Sie die konjunktive Normalform (KNF) und disjunktive Normalform (DNF)
der Schaltfunktion f an, die durch die folgende Tabelle beschrieben wird, und
vereinfachen Sie diese so weit wie möglich. [8 Punkte]
22. Juli 2003
x
y
z
f(x,y,z)
0
0
0
0
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
0
1
0
1
1
1
1
0
0
1
1
1
1
Seite 8 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
Aufgabe 3: Kontextfreie Grammatik
Gegeben sei die folgende kontextfreie Grammatik G = (S, VT, VN, P) mit
S
Startsymbol
VT = {all, and, are, assimilated, base, belong, destroyed, have
been, her, his, my, none of, planet, s, ship, some of, will be,
your}
Terminalsymbole
VN = {Noun, Participle, Pronoun, Quantifier, S, Verb}
Nichtterminalsymbole
P = {
S = [Quantifier] Pronoun Noun[s] {and Noun[s]} Verb Participle,
Quantifier = all | none of | some of,
Pronoun = her | his | my | your,
Noun = base | planet | ship,
Verb = are | belong | have been | will be,
Participle = assimilated | destroyed
}
Regel R1
Regel R2
Regel R3
Regel R4
Regel R5
Regel R6
Kreuzen Sie in der folgenden Tabelle an, welche der Aussagen gelten. Geben Sie
an, welche Regeln Sie zur Ableitung nutzen, falls das vorgegebene Wort w in der
durch G bestimmten Sprache L(G) liegt, also w ∈ L(G) gilt. Geben Sie dabei bitte die
Regeln in der Reihenfolge ihrer Verwendung an. Falls w ∉ L(G) gilt, geben Sie die
Regeln an, die zur Ableitung eines möglichst langen, gültigen Anfangs von w vor
dem Auftreten eines Fehlers führen.
w
w ∈ L(G) w ∉ L(G) zur Ableitung benutzte
Regeln in Reihenfolge
ihrer Verwendung
a) [2,5 Punkte] all your base are
belong to us
…
…
b) [2,5 Punkte] your ships and
planets will be
assimilated
…
…
22. Juli 2003
Seite 9 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
Aufgabe 4: Rekursive Funktionen
Gegeben sei die folgende rekursive Funktion f : N+ \ {0} → N+
f(n) = 2n h(n)
h(n) =
{ 33
n
falls n = 1
f(n-1) sonst
a) Berechnen Sie den Wert von f(3) und zeigen Sie Ihre Vorgehensweise anhand
des Aufrufstacks. [2 Punkte]
22. Juli 2003
Seite 10 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
b) Formulieren Sie einen iterativen Algorithmus zur Berechnung von f in
Pseudocode oder Java. [7 Punkte]
22. Juli 2003
Seite 11 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
c) Beweisen Sie per Induktion, dass Ihre Implementierung aus Teilaufgabe b) die in
Teilaufgabe a) genannte Funktion realisiert. [7 Punkte]
22. Juli 2003
Seite 12 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
Aufgabe 5: Sortierverfahren
Gegeben sei das Array A = {22, 45, 78, 56, 90, 11, 76, 98}. Sortieren Sie A mit dem
Quicksort-Algorithmus (das Pivot-Element sei das jeweils erste Element in dem
betrachteten Teilarray) und geben Sie die Inhalte der Teilarrays in den einzelnen
Schritten tabellarisch an. Geben Sie in jedem Schritt auch die Zahl der darin
durchgeführten Element-Vergleiche an. [7 Punkte]
22. Juli 2003
Seite 13 von 14
Klausur - Teilgebiet: Digitale Informationsverarbeitung
Vor- und Nachname:
Mat.-Nr.:
Aufgabe 6: Objektorientierte Modellierung
Gegeben sei das folgende Szenario.
„Die Mietwagenfirma Rent-A-Wreck verleiht Fahrzeuge der beiden Typen
PKW und LKW. Jedes Fahrzeug wird charakterisiert durch ein amtliches
Kennzeichen und die Dauer des derzeit laufenden Mietvertrags in Tagen. Für
jedes Fahrzeug kann es zu einem beliebigem Zeitpunkt höchstens einen
derzeitigen Mieter und höchstens einen vorgemerkten, zukünftigen Mieter
geben.
PKWs werden näher präzisiert durch die Zahl der Türen, LKWs durch das
maximale Gewicht der Ladung. Die tägliche Mietgebühr wird individuell für
jedes Fahrzeug als Euro-Betrag festgelegt.
Es gibt zwei Gruppen von Mietern: Privat- und Geschäftskunden.
Privatkunden zahlen grundsätzlich 100% der Ausleihgebühr, während
Geschäftskunden einen individuell verhandelten Rabatt erhalten. Privatkunden
sind durch ihren Namen und ihre Anschrift charakterisiert, Geschäftskunden
besitzen einen Namen und eine Stammkunden-Nummer.
Um den aktuellen Zustand eines Fahrzeugs darzustellen, sollen seine
Attribute und auch die des derzeitigen und des vorgemerkten Mieters in einem
zusammenhängenden String ausgegeben werden können. Diese Ausgabe sei
in allen Klassen durch eine Methode toString realisiert. Bei der Ausgabe
der Attribute eines Fahrzeugs sollen auch die für den derzeitigen Mieter
berechneten Mietkosten ausgegeben werden.“
Analysieren Sie das beschriebene Szenario der Abläufe in einer Mietwagenfirma.
Modellieren Sie die verwendeten Klassen und ihre Beziehungen in einem UMLKlassendiagramm inklusive ihrer Methoden, Attribute und Sichtbarkeiten. [7 Punkte]
22. Juli 2003
Seite 14 von 14
Herunterladen