Lösungen - Fakultät Informatik/Mathematik

Werbung
Fakultät Informatik/Mathematik
LV „Grundlagen der Wirtschaftsinformatik“
Prof. Dr.-Ing. habil. H. Fritzsche
Dresden, den xx.xx.xxxx
Lösungen zur Prüfungsklausur (Muster)
Erreichbare Punkte: 60
Hilfsmittel: keine
_________________________________
Name, Vorname, Matr.-Nr.
1. Grundbegriffe:
(a) Begriffe Daten: Rohmaterial, sind ohne Bedeutung, erst durch Interpretation
werden Daten zu Informationen (eine Messreihe erlangt erst eine Bedeutung,
wenn man weiß, dass es sich um gemessene Temperaturwerte an einem bestimmten Ort in einem bestimmten Zeitabstand handelt). Information: Daten mit Bezug zu einem Zweck. Aus unterschiedlichen Informationen kann man Schlussfolgerungen ziehen (die Informationen verknüpfen) und Wissen schaffen.
(b) Übertragungsleistungen: bit/s, Kbit/s, Mbit/s, Gbit/s.
(c) Kontextfreie Sprachen sind zu nichtdeterministischen Kellerautomaten äquivalent.
(d) fehlererkennender Code: Wenn durch Verfälschungen einzelner Bits bei der
Übertragung von codierten Nachrichten Pseudoworte, aber keine Nutzworte
entstehen, können Verfälschungen automatisch erkannt werden. fehlerkorrigierender Code: Eine spezielle Art fehlererkennender Codes. Wenn die HammingDistanz genügend groß ist, kann zusätzlich zur Tatsache, dass eine Verfälschung
vorliegt auch noch festgestellt werden, an welcher Position in übertragenen Wörtern Fehler aufgetreten sind.
(e) Stamm-, Bestands- und Bewegungsdaten :
Daten
Stammdaten
Preis
Wareneingang
Kontonummer
x
Adresse
x
Materialentnahme
Kontostand
Abbuchung
Geburtsdatum
x
Bestandsdaten
x
x
Bewegungsdaten
x
x
x
(f) Ein Identifikationsschlüssel dient dazu, einzelne Datensätze eines Datenbestands
eineindeutig zu identifizieren. Der Wertebereich ist statisch (im Gegensatz zu
dynamisch, wo die möglichen Werte des Wertebereichs durch die momentan in
einem anderen Datenbestand (Datenbank-Tabelle) vorkommenden Werte bestimmt sind).
(g) Eine Relationen R ist eine Teilmenge des Kreuzprodukts von ein, zwei oder
mehreren Mengen. Die Eigenschaft antisymmetrisch bedeutet, dass wenn x R y
gilt nicht gleichzeitig y R x gelten kann. Die Eigenschaft transitiv bedeutet, dass
wenn x R y und y R z gelten auch x R z gilt.
2. Turing-Maschine (5-Tupel): siehe Skript zur Vorlesung.
Eine Turing-Maschine ist eine universelle Rechenmaschine. Sie kann eine Beschreibung einer Rechenmaschine und eine für diese Rechenmaschine gestellte Aufgabe
zusammen verarbeiten und die Aufgabe lösen. Die Turing-Maschine kann damit jede
andere Rechenmaschine imitieren. Ein Endlicher Automat hat keinen Speicher zum
Lesen und Schreiben. Ein Kellerautomat hat einen Speicher zum Lesen und Schreiben, wobei Restriktionen für die Reihenfolge des Lesens und Schreibens gelten. Die
Turing-Maschine kann an beliebige Stellen des Speichers lesend/schreibend zugreifen
(es gibt Operationen, um das Band zu bewegen).
3. Gegeben sei folgende Grammatik G = (N, T, P, S ) mit
N ={S, A, B }, T ={a, b}, P ={S →aB, A→Ab, A→a, B →Ab}
(a) die Grammatik ist vom Chomsky-Typ 2, d.h. kontextfrei. Eigenschaften: Es gibt
keine ε-Regel. Es gibt eine rechtslineare und zwei linkslineare Regeln (also ist
die Grammatik nicht regulär). Für alle Regeln gilt, dass auf der linken Seite
ausschließlich ein Nichtterminalsymbol steht.
(b) Ableitung des Wortes aabbb :
S → aB → aAb → aAbb → aAbbb → aabbb
(c) die Grammatik ist eindeutig.
4. Gegeben sei folgendes Programm zur Arbeit mit einer Hashtabelle a:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
int fuelle(struct satz *a){
printf("
Erprobung Hash-Verfahren\n");
int el;
int x;
printf("::: Eingabe von Schlüsselwerten (0 - Abbruch) :::\n");
printf("Schlüsselwert:"); scanf( "%d",&x);
while((x != 0) && (x < 100)){
el=hash(x);
if (a[el].key==0){
a[el].key=x;
} else {
if((a[el].key)==x)
printf("Matrikelnr. schon vorhanden\n");
else {
psatz z = malloc(sizeof(psatz *));
z->key=x;
insertelem(a[el].succ, z);
}
}
printf("Matr.-Nr.:"); scanf( "%d",&x);
printf("Matr.-Nr.: %d\n",x);
}
}
(a) Steuerflussgraphen G :
(b) zyklomatische Zahl v(G) = e − k + 2 · p = 25 − 23 + 2 = 4
(c) x = 1: hash(1) = 1 modulo 17 = 1.
x = 18: hash(18) = 18 modulo 17 = 1.
Im Falle von Kollissionen werden die Datensätze offenbar in einer Überlauf-Liste
gespeichert: Es wird Platz für einen Datensatz angefordert. Anschließend wird
eine Funktion insertelem aufgerufen.
(d) Komplexität zum Einfügen eines Elementes: prinzipiell O(1), wenn die Kollissionen außer Acht gelassen werden. Sonst erhöht sich die Komplexität geringfügig
(bis maximal n/2, wenn es ausschließlich Kollissionen gibt).
5. Gegeben sei ein Alphabet A = α, β, γ, δ, ε. Die Wahrscheinlichkeiten des Auftretens
der Zeichen sind h(α) = 0, 50, h(β) = 0, 25, h(γ) = 0, 12, h(δ) = 0, 10, h(ε) = 0, 03.
(a) Erzeugen einer optimalen Binärcodierung:
xi h(xi ) Code l(xi )
α 0,50 1
1
β 0,25 01
2
γ 0,12 001
3
δ 0,10 0001
4
ε 0,03 0000
4
(b) Mittlere Wortlänge L des Codes:
L = 1 · 0, 5 + 2 · 0, 25 + 3 · 0, 12 + 4 · 0, 1 + 4 · 0, 03 = 0, 5 + 0, 5 + 0, 36 + 0, 4 + 0, 12 = 1, 88
6. In der Zeile 2 und Spalte 9 (Prüfbitspalte) muss eine 1 stehen.
0
1
1
0
0
1
1
1
1
1
0
0
1
0
0
0
1
1
0
1
1
0
1
0
0
1
1
1
0
1
1
0
0
1
1
1
0
1
1
1
0
0
1
0
1
1
1
0
0
1
1
0
1
0
1
0
0
1
0
0
1
0
0
7. Weisen Sie nach, ob die ISBN-Nummern folgender Bücher korrekt eingegeben wurden:
(a) 3-540-19362-6
3·10+5·9+4·8+0·7+1·6+9·5+3·4+6·3+2·2 = 30+45+32+6+45+12+18+4 =
192 .
192 modulo 11 = 5. 11 − 5 = 6. Der errechnete Wert 6 stimmt mit der Prüfziffer
überein, die Nummer ist richtig.
(b) 3-528-46590-5
3 · 10 + 5 · 9 + 2 · 8 + 8 · 7 + 4 · 6 + 6 · 5 + 5 · 4 + 9 · 3 + 0 · 2 = 30 + 45 + 16 + 56 +
24 + 30 + 20 + 27 + 0 = 248 .
248 modulo 11 = 6. 11 − 6 = 5. Der errechnete Wert 5 stimmt mit der Prüfziffer
überein, die Nummer ist richtig.
8. Artikeldatensätze in der Reihenfolge ihres Anfalls.
(a) Indextabelle mit der Art.-Nr. als Ordnungsbegriff, die folgende Spalten enthält:
1. Tabellenposition, 2. Art.-Nr., 3. Tabellenposition des logisch vorhergehenden
Datensatzes, 4. Tabellenposition des logisch folgenden Datensatzes, 5. Speicheradresse
Position Art.-Nr. Log. Vorg. Log. Nachf. Speicheradresse
1
10101
2
0.2
2
12003
1
3
1.3
3
13005
2
4
2.3
4
20107
3
5
0.1
5
40115
4
6
2.1
6
41016
5
7
2.0
7
43018
6
1.0
(b) Geordneter Binärbaum:
(c) Handelt es sich bei dem unter (b) erstellten Baum um einen ausgewogenen
Baum?
Der Baum ist nicht ausgewogen. Die Bedingung ist, dass sich die Höhe des linken
und des rechten Teilbaumes um höchstens 1 unterscheidet. Das ist im Beispiel
nicht der Fall.
Herunterladen