dv ss 2009 klausurvorbereitung - fzt.haw-hamburg.de · • kontrollstrukturen in vb und ihre...
TRANSCRIPT
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
DV SS 2009
Klausurvorbereitung
Dipl.-Ing. Jutta Abulawi
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Regeln für die Klausurteilnahme
1. Teilnahme an der Klausur ist nur möglich, wenn Sie online angemeldet sind oder von mir eine Anmeldebestätigung per E-Mail erhalten haben!
2. Erlaubte Hilfsmittel:– Gedruckte und handgeschriebene Unterlagen aus Ihrem
persönlichen Besitz (Bücher, Skripte, Übungsaufgaben, Vorlesungsmitschrift, alte Klausuren …)
– Taschenrechner
3. Nicht erlaubt:– Handy (auch nicht als Uhr-Ersatz!)– Handschriftl. Unterlagen, Notizen und Ratschläge von
anderen Personen…
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Klausurbewertung und Aufgaben
• Bearbeitungszeit: 120 Minuten. • Höchstpunktzahl: 120 Pkte.• ≥ 100 Punkte = 1,0• ab 50 Pkte = bestanden (4,0)
• Bearbeitung nur auf den Klausurblättern• Es gibt verschiedene Klausurgruppen mit unter-
schiedlichen Aufgaben gleichen Schwierigkeitsgrads
• Jede Gruppe erhält 7 Aufgaben zu folgenden Themen=>
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 1 – Grundlagen der Datenverarbeitung Max. 10 Pkte.
3 Fragen – in Stichworten zu beantworten
Was Sie hierfür wissen sollten:• Aus welchen Komponenten bestehen moderne Digitalrechnersysteme? (Abb. 6
im Begleitskript Teil 1)• Wie heißen konkrete Beispiele hierfür und welche besonderen Eigenschaften
haben einzelne Komponenten (z.B. Speichermedien)?• Worin unterscheiden sich Analog- und Digitaltechnik?• Wozu dienen D/A- bzw. A/D-Wandler?• Was bedeutet Diskretisierung?• Was versteht man unter dem Mooreschen Gesetz?• Was versteht man unter der digitalen Revolution?• Welche Bedeutung hat die Datenverarbeitung im Ingenieurwesen?• Wo liegt die Problematik der langfristigen Produktdatenarchivierung?• Worin unterscheiden sich die Rechnerarchitekturen von Harvard und von
Neumann?• Was bedeutet das EVA-Prinzip?
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 1 – Grundlagen der Datenverarbeitung Max. 10 Pkte.
Klausuraufgabe aus dem WS 2008/09:
a) Nennen Sie für jede der nachfolgenden Kategorien eine konkrete Komponente eines heute gebräuchlichen Digitalrechnersystems:
Erreichbare Punktzahl: 4
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 1 – Grundlagen der Datenverarbeitung Max. 10 Pkte.
Klausuraufgabe aus dem WS 2008/09:
b) Warum muss man das Mooresche Gesetz berücksichtigen, wenn man Investitionen in Hardware plant?
Gemäß dem Mooreschen Gesetz verdoppelt sich die Integrationsdichte bzw. die Leistungsfähigkeit von Mikroprozessoren in weniger als 2 Jahren. Hardware veraltet also lange, bevor sie "abgenutzt" wird.Sie muss daher möglichst schnell abgeschrieben werden.
Erreichbare Punktzahl: 4
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 1 – Grundlagen der Datenverarbeitung Max. 10 Pkte.
Klausuraufgabe aus dem WS 2008/09:
c) Nennen Sie für jede der folgenden Eigenschaften ein Eingabegerät, auf das die Eigenschaft zutrifft
Erreichbare Punktzahl: 2
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 1 – Grundlagen der Datenverarbeitung Max. 10 Pkte.
Klausuraufgabe aus dem SS 2008:
b) Kann man auf einem USB-Memorystick, der noch 450 Bytes freien Speicherplatz hat, zehn Textdateien mit einer Größe von jeweils 44 Byte speichern (ohne spezielles Packprogramm)?
2 Pkte.
c) Nennen Sie für jede der folgenden Eigenschaften ein Speichermedium, auf das die Eigenschaft zutrifft.
3 Pkte.
NEIN
USB-StickCD, DVD
CD, DVD
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 2 – Repräsentation von Daten in Digitalrechnern max. 12 Pkte.
3 Fragen – in Stichworten bzw. mit Angabe des Rechenwegs zu beantworten
Was Sie hierfür wissen sollten:– Welche Datenkategorien gibt es?– Welche Datentypen gibt es für die Zahlendarstellung? – Wie rechnet man ganze Zahlen aus verschiedenen Zahlensystemen um?
(Dezimal-/Hexadezimal und Dualsystem)Sie dürfen sich hierbei auf Tabelle 1 im Begleitskript beziehen
– Wie kann man nichtnumerische Daten im Digitalrechner speichern?– Zeichen des ASCII- und ANSI-Codes (Tabellen 3 & 4 im Begleitskript)– Grundbegriffe des Dateisystems:
• Vollständiger Dateiname = Speicherpfad und Dateiname• Dateiname = individueller Name und Dateinamenserweiterung
– Die Dateinamenserweiterungen wichtiger Dateitypen (.exe .bat .txt .xls .doc .html .gif .jpg .bmp …)
– Warum unterscheidet Windows zwischen der Dateigröße und der Größe der Datei auf dem Datenträger?
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 2 – Repräsentation von Daten in Digitalrechnern max. 12 Pkte.
Klausuraufgaben aus dem WS 2008/09:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 2 – Repräsentation von Daten in Digitalrechnern max. 12 Pkte.
Klausuraufgaben aus dem SS 2008:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 2 – Repräsentation von Daten in Digitalrechnern max. 12 Pkte.
Klausuraufgabe aus dem SS 2008:
4 Pkte.
1011 = B[16] = 11[10] UND 0011 = 3[16] = 3[10]
10110011 ⇔ B3[16] = [11*161 + 3*160 ] [10] = [176 + 3][10] =
179[10]
Zerlegung des 8-Bit-Wortes in zwei 4-Bit-Worteund Ermittlung der entsprechenden Hexadezimal- und Dezimalzahl aus Tabelle 1 im Skript Seite 23:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 3 – Grundlagen der Programmiersprachen max. 18 Pkte.
3 Fragen – in Stichworten zu beantworten
Was Sie hierfür wissen sollten:– Worin unterscheiden sich:
• Ein Compiler und ein Interpreter?• Quellcode und Maschinencode?• Maschinensprachen und höhere Programmiersprachen?• einfache Variablen und Datenfelder?• Objektvariablen und Auflistungen/Sammelobjekte?
– Die wichtigsten Besonderheiten der in der Vorlesung erwähnten Programmiersprachen: FORTRAN, C++, Java, Visual Basic
– Was versteht man unter „objektorientierter Programmierung“? – Was bedeutet „prozedurale Programmierung“?– Was bedeutet „Debugging“?– Arten von Programmierfehlern. Wann treten sie auf? Wie erkennt man sie?– Was ist ein Algorithmus?– Was ist „Spaghetticode“?
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 3 – Grundlagen der Programmiersprachen max. 18 Pkte.
Klausuraufgaben aus dem WS 2008/09:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 3 – Grundlagen der Programmiersprachen max. 18 Pkte.
Klausuraufgaben aus dem WS 2008/09:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 3 – Grundlagen der Programmiersprachen max. 18 Pkte.
Klausuraufgaben aus dem WS 2008/09:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 3 – Grundlagen der Programmiersprachen max. 18 Pkte.
Klausuraufgaben aus dem SS 2008:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 4 – Programmabläufe verstehen & visualisieren max. 20 Pkte.
Gegeben: Der Quellcode einer Sub-/Function-Prozedur aus einem Excel-VBA-Projekt
Aufgabe: Den Quellcode verstehen und in ein Pseudocodestruktogramm umsetzen
Was Sie hierfür kennen/wissen sollten:• Datentypen in VB und Variablendeklaration• Wertzuweisungen, arithmetische und Vergleichsoperatoren• Funktionen für Zeichenfolgen• Typumwandlungsfunktionen• Kontrollstrukturen in VB und ihre symbolische Umsetzung im Struktogramm• Zugriff auf Excel-Objekte (Mappen, Arbeitsblätter, Zellen und ihre Inhalte)
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 4 – Programmabläufe verstehen & visualisieren max. 20 Pkte.
Klausuraufgabe aus dem WS 2008/09:
größten 1.
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 4 – Programmabläufe verstehen & visualisieren max. 20 Pkte.
Klausuraufgabe aus dem WS 2008/09:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 4 – Programmabläufe verstehen & visualisieren max. 20 Pkte.
Klausuraufgabe aus dem SS 2008:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 4 – Programmabläufe verstehen & visualisieren max. 20 Pkte.
Ein mögliches Pseudocode-Struktogramm, das volle Pkt.-zahl ergab:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 5 – Algorithmen und ihre Umsetzung in VBA max. 10 Pkte.
Gegeben: eine mathematische Formel, für die eine Function-Prozedur in Visual Basic Quellcode aufzuschreiben ist
Was Sie hierfür zusätzlich kennen/wissen sollten:• Arithmetische Operatoren und mathematische Funktionen:
+ - / * ^ sqr() • Übergabe von Argumenten an Function-Prozeduren• Besondere Bedeutung des Namens einer Function-Prozedur
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 5 – Algorithmen und ihre Umsetzung in VBA max. 10 Pkte.
Klausuraufgabe aus dem WS 2008/09:
Option Explicit
Function Endwert(___________________) As __________
End Function
Option ExplicitFunction Endwert(m As Double, n As Integer) As DoubleDim Index As IntegerFor Index = 1 to n
Endwert = Endwert + 2*m^Index/(Index^n)NextEndwert = Endwert *4/3End Function
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Gegeben: drei Teilaufgaben zum Verständnis einfacher VB-Prozeduren
Was Sie hierfür zusätzlich kennen/wissen sollten:• Initialwerte von Variablen• Implizite Typumwandlungen (insbesondere in den Typ Integer)• Operatoren sowie einfache Zeichenfolgen-Funktionen
(InStr, Len, Right, Left, Mid, IsNumeric)• Interpretation von Laufzeitfehlermeldungen und Fehlerursachen im
Quellcode finden• Die Bedeutung der Schrittweite in zählergesteuerten Schleifen• Den Wert des Schleifenindex nach dem letzten Durchlauf einer
zählergesteuerten Schleife• Deklaration und Redimensionierung von Datenfeldern• Funktionsweise und Rückgabewerte der Inputbox- und der MsgBox-
Funktionen• Die Chr-Funktion
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Klausuraufgabe aus dem WS 2008/09:
a) Im Excelfenster ist die in Bild 1 gezeigte Arbeitsmappe "Punktkoordinaten.xls" aktiv. Beim Ausführen der im Modul1 dieser Mappe enthaltenen Sub-Prozedur "Eingabe" erscheint die in Bild 1 gezeigte Fehlermeldung.
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Klausuraufgabe aus dem WS 2008/09: Forts. von Aufgabe a)
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Klausuraufgabe aus dem WS 2008/09:
b) Die nachfolgend abgedruckte Prozedur wurde bis zum Haltepunkt ausgeführt. Welchen Wert haben die Variablen beim Erreichen des Haltepunkts?
Erreichbare Punktzahl: 9 Pkte.
Antwort =
Ergebnis =
Index =
text =
Summe =
Zahl_1 =
Antwort = Falsch
Ergebnis = 4
Index = 6
text = ".xls"
Summe = 18
Zahl_1 = 12,5
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Klausuraufgabe aus dem WS 2008/09:
c) Skizzieren Sie das Mitteilungsfenster, das erscheint, wenn folgende Prozedur ausgeführt wird:
Sub msgbox_test()MsgBox "Dies ist ein " & Chr(34) & "leichter" _
& Chr(34) & " Test", vbInformation, "Übungsfenster"End Sub
Erreichbare Punktzahl: 5 Pkte.
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Klausuraufgabe aus dem SS 2008:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Weitere Aufgabenbeispiele:
b) Skizzieren Sie das Mitteilungsfenster, das durch die folgende Anweisung erzeugt wird:
Antwort = MsgBox("Es trat ein Fehler " & _"auf." & Chr(13) & "Neueingabe erwünscht?", _20, "Fehlermeldung")
c) Was bewirkt die Anweisung: Msgbox Chr(181)
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Klausuraufgabe aus dem SS 2008:
Die Variable Eingabefehler hat den Initialwert „False“ zu Beginn der Pre-Checkschleife.Die Abbruchbedingung der Pre-Check-Schleife ist dadurch erfüllt, so dass die Anweisungen in der Schleife nicht ausgeführt werden.Bei Ausführung der MsgBox-Anweisung hat die Variable Eingabe immer noch ihren Initialwert ““ (leere Zeichenkette).
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 6 – Programmiergrundlagen in VBA max. 20 Pkte.
Klausuraufgabe aus dem SS 2008:
c) Welchen Wert haben die Variablen beim Erreichen des Haltepunkts?
Zahl_1 = 25,5
Ergebnis = 9
Index = 2
Summe = 18
Antwort = Wahr
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 7 – Programmieraufgabe (in Excel-VBA) max. 30 Pkte.
Klausuraufgabe aus dem WS 2008/09
Entwerfen Sie eine Sub-Prozedur, die:1. in Excel eine neue Arbeitsmappe erzeugt2. in das aktive Arbeitsblatt dieser Arbeitsmappe die unten
abgebildeten Texte/Werte einträgt. 3. die Arbeitsmappe als Datei "Punktkoordinaten.xls" im
Verzeichnis "H:\catia5" speichert.Achtung:Es sind keine Anweisungen für Zellformatierungen nötig.Es sind keine Benutzerdialoge erforderlich.Beachten Sie die Option Explicit im Modulkopf!Ihr Quellcode sollte 19 bis max. 25 Zeilen umfassen.
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 7 – Programmieraufgabe (in Excel-VBA) max. 30 Pkte.
Klausuraufgabe aus dem WS 2008/09 – gegebene Abbildung
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 7
Klausuraufgabe aus dem WS 2008/09
Lösungsblatt:
KlausurvorbereitungHAW / Dept. F+F / J. Abulawi Datenverarbeitung SS09
Aufgabe 7 – Musterlösung aus dem WS 2008/09 max. 30 Pkte.Option ExplicitSub Startmappe_erzeugen()'--- Variablendeklaration und -initialisierung
Dim Mappe As WorkbookDim Index As IntegerDim X As IntegerX = -50
'--- Eine neue Arbeitsmappe erzeugenSet Mappe = Workbooks.Add
'--- Werte im aktiven Arbeitsblatt der neuen Mappe eintragenRange("A1").Value = "x"Range("B1").Value = "y"Range("C1").Value = "z"For Index = 1 To 11
Cells(Index + 1, 1).Value = XCells(Index + 1, 2).Value = X ^ 2 / 10If X < 0 Then
Cells(Index + 1, 3).Value = 0Else
Cells(Index + 1, 3).Value = 10End IfX = X + 10
Next'--- Neue Arbeitsmappe speichern
ActiveWorkbook.SaveAs "H:\catia5\Punktkoordinaten.xls"End Sub
Musterlösung für Klausur A, Aufgabe 7aus dem WS 2008/09