Klausur zur Vorlesung „Einführung in die Informatik“, SS 2003
Name: __________________________ Matrikelnummer: _______________________
Studiengang: ____________________ Semester/Versuch:____________/__________
Datum: 17. Juli 2003 Bearbeitungszeit: 60 min
Punkteverteilung (insgesamt 40):
Aufgabe 1: 8 Aufgabe 2: 4 Aufgabe 3: 8
Aufgabe 4: 7 Aufgabe 5: 7 Aufgabe 6: 3 Aufgabe 7: 3 Notenverteilung:
1.0 38-40 2.0 29-31 3.0 23-24 4.0 17-18
1.3 35-37 2.3 27-28 3.3 21-22 4.3 10-16
1.7 32-34 2.7 25-26 3.7 19-20 4.7 5-9
Aufgabe 1) Algorithmen (8 Punkte)
Fibonacci-Zahlen lassen sich durch folgende rekursive Funktion berechnen:
int fiburek(int n) { if (n 2)
{ fiburek = 1; }
else {fiburek = fiburek(n-1) + fiburek(n-2)}
}
a) Was versteht man unter einer Rekursion im Zusammenhang mit der Definition einer Funktion? (2 Punkte)
b) Geben Sie die Folge der fiburek-Aufrufe an, die durch fiburek(5) initiiert werden. Hierbei wird angenommen, dass arithmetische Verknüpfungen von links nach rechts abgearbeitet werden. Für die Darstellung der Folge verwenden Sie entweder eine textuelle oder eine graphische Darstellung. (4 Punkte)
c) Geben Sie die Anzahl a(n) von Additionen an, die bei der Ausführung des Aufrufs fiburek(n) für eine natürliche Zahl auftreten. [Hinweis: Die Anzahl kann rekursiv angegeben werden.] (2 Punkte)
Aufgabe 2) Betriebssystem (4 Punkte)
Was sind die wesentlichen Komponenten eines Betriebssystems?
Aufgabe 3) Datenbanken (8 Punkte)
Das Entity-Relationship-Modell (ER-Modell) ist ein Datenmodell, das zur Beschreibung eines konzeptuellen Datenbankschemas dient.
a) Was sind Entity-Typen und Relationship-Typen? (3 Punkte)
b) Für Ihre Fakultät soll eine Bibliotheksdatenbank aufgebaut werden. Es existieren die Entity-Typen
Studierender: mit den Attributen „Name“, „Matrikelnummer“, Buch: mit den Attributen „Titel“, „Inventarnummer“,
und der Relationship-Typ
entleiht: zwischen Studierender und Buch mit dem Attribut „Entleihedatum“.
Beachten Sie, dass ein Studierender mehrere Bücher ausleihen kann.
Zeichnen Sie für diese Datenbankaufgabe das zugehörige ER-Modell. (5 Punkte)
Aufgabe 4) Entscheidungstabellen und EXCEL-Funktion (7 Punkte)
Im Hotel Dobroudzhab des bulgarischen Badeortes Albena werden für die Gäste wöchentlich folgende 2 Events angeboten:
1. Bulgarische Hochzeit (mit Bustransfer in ein bulgarisches Dorf, Tanz und Abendessen) 2. Tier-Safari (mit Bustransfer ins Balkangebirge und Jeepexkursion)
Es gelten folgende Preisregelungen:
Gäste, die an diesen Events nicht teilnehmen, zahlen nur den Hotelgrundpreis.
Teilnahme nur an der bulgarischen Hochzeit: 5 % Zuschlag zum Hotelgrundpreis.
Teilnahme nur an der Foto-Tier-Safari: 8 Zuschlag zum Hotelgrundpreis.
Teilnahme an beiden Events: 10 Zuschlag zum Hotelgrundpreis.
Die Gesamtpreisberechnung erfolgt in einer EXCEL-Tabelle (vgl. Spalte E), welche die nachfolgend aufgeführte Form besitzt:
A B C D E
1 Gästeliste Hotelgrund-
preis [Euro]
Teilnahme an bul- garischer Hochzeit
Teilnahme an Foto-Safari
Gesamtpreis [Euro]
2 Mr. Meier 400 J j 440,00
3 Mr. and Mrs. Bond 750 J n 787,50
Tragen Sie nun die oben aufgeführten Bedingungen und daraus abzuleitenden Aktionen für die Berechnung des Gesamtpreises in geeigneter Form und unter Verwendung der EXCEL- Zellen-Notation (z.B. C2=“j“) in das nachfolgende leere Entscheidungstabellenformular ein.
M 1 2 3 4 5 6 7 8
C1 2
C2 2
C3 2
A1 A2 A3 A4
Formulieren Sie auf der Grundlage der von Ihnen oben entwickelten Entscheidungstabelle eine geschachtelte WENN-Funktion für die Spalte E des oben aufgeführten EXCEL- Arbeitsblattes, damit ab der Zelle E2 die Gesamtpreise für alle möglichen Kombinationen aus Hotelgrundpreis und Eventbuchungen ausgegeben werden
EXCEL-WENN-Funktion
5 Punkte
2 Punkte
Aufgabe 5) VBA und Nassi-Shneiderman-Kontrollstrukturen (7 Punkte)
Der Silvrettaort Ischgl bietet seinen Gästen ein kombiniertes Ferienpaket aus Chalet und geführten Bergtouren an. Hierzu hat der Gast die Aufenthaltsdauer (in Tagen) im Chalet und die Anzahl der Tage zu erfassen, an denen er einen Bergführer „mietet“.
1. Ergänzen Sie die nachfolgend aufgeführte Prozedur „Urlaubskosten“ mittels geeigneter Nassi-Shneiderman-Kontrollstrukturen in der Weise, dass alle Eingaben des Anwenders mit einer Fehlermeldung so lange abgelehnt werden, bis für die Variablen Dauer und Bergfuehrertage Zahlen größer Null eingegeben wurden.
2. Ergänzen Sie die fehlenden Angaben zur gültigen Formulierung der Funktion
„Chaletkosten“ und formulieren Sie den Aufruf der Funktion in der Prozedur
„Urlaubskosten“ in geeigneter Weise.
3. Korrigieren Sie 2 Fehler, die sich in die Prozedur „Bergfuehrerkosten“ befinden.
Sub Urlaubskosten()
Dim Dauer As Integer, Bergfuehrertage As Integer
Dim Kosten1 As double, Kosten2 As double, Gesamtkosten As double
End Sub
Function Chaletkosten (...) as double
End Function
Dauer = InputBox("Geben Sie die Aufenthaltsdauer (in Tagen) im Chalet ein")
Bergfuehrertage = InputBox("An wieviel Tagen benötigen Sie einen Bergführer?")
... = Chaletkosten (Dauer) call Bergfuehrerkosten (Bergfuehrertage, Kosten2) Gesamtkosten = Kosten1 + Kosten2
MsgBox ("Ihr Urlaub kostet: " & Gesamtkosten)
... =Tage * 80
3 Punkte
2 Punkte 2 Punkt
Aufgabe 6) HTML (3 Punkte)
Nachfolgend sehen Sie den Inhalt einer HTML-Datei. Der Datei fehlt das Grundgerüst und sie enthält noch einige Fehler. Vervollständigen und korrigieren Sie den Code.
<html>
<TITLE>Die Zillertalarena – pures Skivergnügen <ENDTITLE>
<Überschrift1>Wllkommen im Zillertal</Überschrift1>
<IMG SRC="foto.gif" /IMG>Special Events
<br>
1.04.2003 20.00 Uhr:
<LINKTAG href:http://www.kuhstall.de/DateTime20020726.html>Der Kuhstall tanzt
<A href="mailto:kuhstallmaster@kuh.stall.de"></i>Ihre Meinung<i></A>
</html>
3 Punkte
Aufgabe 7) HTML (3 Punkte)
Folgender Html-Code beschreibt eine Tabelle. Vervollständigen Sie die Tabelle in dem dafür vorgesehenen (karierten) Bereich, der den Bildschirm darstellen soll. Geben Sie die Größenverhältnisse proportional wieder.
<html>
<table width =”100%” height=”50%”>
<tr heigth=”25%” valign=”middle” align=”left”>
<td width=”10%”>Anzahl</td>
<td width=”40%”>Produkt</td>
<td width=”25%”>Einzelpreis</td>
<td width=”25%”>Gesamtpreis</td>
</tr>
<tr heigth=”25%”>
<td>3</td>
<td>Flachbildschirme</td>
<td>400 €</td>
<td>1200 €</td>
</tr>
<tr heigth=”25%”>
<td>5</td>
<td>Mäuse</td>
<td>20 €</td>
<td>100 €</td>
</tr>
<tr heigth=”25%” valign=”bottom”>
<td colspan=”3”>Summe:</td>
<td>1300 €</td>
</tr>
</table>
<html>
3 Punkte
Produkt Anzahl