Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 1 Name: Vorname: Matrikelnr: Studiengang: Bauingenieurwesen Studiensemester: Anzahl der abgegebenen Blätter: Ich habe die Klausuraufgaben selbständig gelöst und war im Vollbesitz meiner Kräfte. Unterschrift: Bitte geben Sie die Klausur mit Aufgabenblatt ab und kennzeichnen Sie jedes Blatt mit Name und Matrikelnummer. Aufgabe erz. Punkte 1 2 3 4 5 Sum Note Bitte lösen Sie Sie die Programmieraufgaben in den Programmiersprachen VBA für EXCEL (2. Semester) oder Pascal (alle anderen). 1) Erläutern Sie die Grundbestandteile eines Computers und ihr prinzipielles Zusammenwirken. 2) Was bezeichnen die Begriffe Multitasking-System und Multiuser-System? 3) Von welchem Massenspeichermedium kann nur gelesen werden? Erläutern Sie, wie die Daten auf diesem Medium abgelegt werden. Welche Vorteile und welche Nachteile sind mit diesem Aufzeichnungsverfahren verbunden? 4) Schreiben Sie ein Programm, das Grenzdaten für ein Grundstück aus der Datei Daten.dat lesen und dessen Fläche nach der Gaußschen Trapezformel berechnen kann. Die erste Zeile enthält die Anzahl der Datensätze, die weiteren Zeilen jeweils ein Koordinatenpaar. Das Programm soll die folgende Anforderungsliste erfüllen. 1) Grundlagen der EDV Zwischenspeichern der Koordinaten in zwei Feldern x und y. Das Programm soll Grundstücke mit maximal 10 Eckpunkte verarbeiten. Dimensionieren Sie die Felder entsprechend und .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 2 geben sie eine Fehlermeldung, wenn wenn mehr als 10 Koordinatenpaare in der Datei stehen. 2) Die Berechnung der Fläche soll in einem Funktionsunterprogramm erfolgen. Die Eingangsparameter sind die Anzahl der Punkte und die Felder mit den x- und den y-Koordinaten. Ergebnis der Funktion ist die Fläche nach der Formel: n f(x,y) = 0.5 (xi - xi+1)(yi + yi+1) i=1 Das n+1 Koordinatenpaar der Formel bezeichnet das erste Paar im Datensatz. 3) 5) Geben Sie das Ergebnis (die Fläche des Grundstücks) auf dem Bildschirm und in die Datei flaeche.dat in der Form Fläche = Zahl aus. Zahl steht für den numerischen Wert und soll vom System automatisch formatiert werden. Erläutern Sie die Unterschiede zwischen einem Funktionsunterprogramm und einer (Sub-) Prozedur. Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 3 Name: Vorname: Matrikelnr: Studiengang: Bauingenieurwesen Studiensemester: Anzahl der abgegebenen Blätter: Ich habe die Klausuraufgaben selbständig gelöst und war im Vollbesitz meiner Kräfte. Unterschrift: Bitte geben Sie die Klausur mit Aufgabenblatt ab und kennzeichnen Sie jedes Blatt mit Name und Matrikelnummer. Aufgabe erz. Punkte 1 2 3 4 Sum Note Bitte lösen Sie Sie die Programmieraufgaben in den Programmiersprachen VBA für EXCEL (3. Semester) oder Pascal (alle anderen). 1) Bild 1 zeigt die grafische Darstellung eines Programmablaufs. Die folgenden Fragen und Aufgaben a) bis f) beziehen sich auf dieses Bild. a) Wie wird die Darstellungsform in Bild 1 bezeichnet? b) Die Bezeichner x und Feld werden für Felder benutzt. Deklarieren Sie diese Felder für den Wert n = 2. c) Stellen Sie in einer Tabelle alle Zahlenkombinationen für i und j auf, die durch einen Programmablauf nach Bild 1 und einem Wert von n = 2 auftreten können. Wir nehmen dabei an, daß der Betrag der Feldeelemente Feld(i,i) > eps ist. d) Berechnen Sie Werte von x(i), die sich nach der Ausführung des Programms ergeben. Dabei nehmen wir folgende Werte für n und Feld an: n = 2, Feld(1,1) = -1, Feld(1,2) = -2, Feld(1,3) = 3, Feld(2,1) = 0, Feld(2,2) = 2, Feld(2,3) = -4 Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 4 e) Schreiben Sie ein Funktionsunterprogramm, daß den Algorithmus nach Bild 1 ausführt. Die Felder x und Feld seien als globale Variablen bekannt (nicht noch einmal deklarieren), n soll als Parameter übergeben werden und der Rückgabewert soll als Ergebnis der Funktion zurückgegeben werden. f) Welches Ergebnis müßte die Funktion zurückgeben, wenn wir gegenüber Aufgabe 1d) das Feldelement Feld(1,1) auf den Wert Feld(1,1) = 0.0 ändern? Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 5 Titel: 184.EPS Erstellt v on: CorelDRAW! Vorsc hau: Dies e EPS-Grafik w urde nic ht gespeichert mit einer enthaltenen Vors chau. Kommentar: Dies e EPS-Grafik w ird an einen Pos tSc ript-Drucker gedruckt, aber nic ht an andere Druckertypen. Titel: 184.EPS Erstellt v on: CorelDRAW! Vorsc hau: Dies e EPS-Grafik w urde nic ht gespeichert mit einer enthaltenen Vors chau. Kommentar: Dies e EPS-Grafik w ird an einen Pos tSc ript-Drucker gedruckt, aber nic ht an andere Druckertypen. Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 6 Bild 1: Grafische Darstellung eines Programmablaufs 2) Ein Computer soll auf plötzliche Ereignisse reagieren können, obwohl er eigentlich andere Aufgaben bearbeitet. Wie wird dieses Problem üblicherweise gelöst? Wie wird erreicht, daß das wichtigste Ereignis zuerst behandelt wird? 3) Was bezeichnet der Begriff virtuelle verwaltung? Welche positiven und welche Seiten sind mit ihr verbunden? 4) Wie unterscheiden sich ganze Zahlen von Gleitkommazahlen? Grundlagen der EDV Speichernegativen .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 7 Name: Vorname: Matrikelnr: Studiengang: Bauingenieurwesen Studiensemester: Anzahl der abgegebenen Blätter: Ich habe die Klausuraufgaben selbständig gelöst und war im Vollbesitz meiner Kräfte. Unterschrift: Bitte geben Sie die Klausur mit Aufgabenblatt ab und kennzeichnen Sie jedes Blatt mit Name und Matrikelnummer. Aufgabe erz. Punkte 1 2 3 4 5 Sum Note Bitte lösen Sie Sie die Programmieraufgaben in den Programmiersprachen VBA für EXCEL (2. und 4. Semester) oder Pascal (alle anderen). A 1 2 3 B 1 5 Bild 1: 1) C 1 5 D E 1 3 F G H I 1 3 Tabelle vor Ausführung von Programm Aufgabe_1 Bild 1 zeigt eine Tabelle. Stellen Sie sich vor, Sie würden über eine Schaltfläche in der Tabelle das in Bild 3 gezeigte Sub-Unterprogramm Aufgabe_1 ausführen. Füllen Sie die Tabelle in Bild 2 dem Programm entsprechend aus. Stellen Sie sich vor, Sie würden anschließend das Feld A1 auf den Wert 2 ändern und die Felder A2 und B2 auf den Wert 4 ändern. Wie ändert sich die Tabelle nach Ausführung des Programms Aufgabe_1. Füllen Sie die Tabelle in Bild 4 dem Programm entsprechend aus. Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 8 A B C D E F G H I 1 2 3 4 5 6 7 8 9 10 11 Bild 2: Tabellenformular zum Ausfüllen Sub Aufgabe_1() Name = "D1" i_start = Bereich(Name)(1; i_ende = Bereich(Name)(2; j_start = Bereich(Name)(1; j_ende = Bereich(Name)(2; 1).Wert 1).Wert 2).Wert 2).Wert Name = "A4" Für i = i_start Bis i_ende Für j = j_start Bis j_ende Bereich(Name)(i; j).Wert = Leer Nächste j Nächste i Name = "A1" i_start = Bereich(Name)(1; i_ende = Bereich(Name)(2; j_start = Bereich(Name)(1; j_ende = Bereich(Name)(2; 1).Wert 1).Wert 2).Wert 2).Wert Name = "A4" Für i = i_start Bis i_ende Für j = j_start Bis j_ende Wenn i = j Dann Bereich(Name)(i; j).Wert = 0 Sonst Wenn i < j Dann Bereich(Name)(i; j).Wert = i * 100 + j Sonst Bereich(Name)(i; j).Wert = j * 100 + i Ende Wenn Ende Wenn Nächste j Nächste i Name = "D1" Bereich(Name)(1; Bereich(Name)(2; Bereich(Name)(1; Bereich(Name)(2; Ende Sub Bild 3: 1).Wert 1).Wert 2).Wert 2).Wert = = = = i_start i_ende j_start j_ende Programm Aufgabe_1 Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 9 A B C D E F G H I 1 2 3 4 5 6 7 8 9 10 11 Bild 4: Tabellenformular zum Ausfüllen 2) Skizzieren und erläutern Sie die Netzwerktypen Bussystem und Ring. 3) Erläutern Sie die Standarddatentypen, die Ihnen in der gewählten Programmiersprache (VBA oder Pascal) zur Verfügung stehen. 4) Erläutern Sie an einem Beispiel den grundlegenden Aufbau einer SOLANGE Schleife (Pascal while Schleife). Stellen Sie den Ablauf in einem Nassi-Schneidermann Diagramm (Struktogramm) dar. Wird das Abbruchkriterium am Anfang oder am Ende der Schleife geprüft? 5) Schreiben Sie eine VBA-Funktion mit vier Parametern. Der erste Parameter gibt einen Dateinamen an. Die Werte der drei weiteren Parameter sollen der Datei, deren Namen Parameter 1 angibt, angehängt werden. Das Programm soll den Kanal mit der Dateinummer (Kanalnummer) 1 verwenden und geschlossen hinterlassen (Pascal: keine Kanalnummer). Die Parameter sollen folgende Datentypen haben: 2. Parameter ganze Zahl, 3. und 4. Parameter Gleitkommazahlen. Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 10 Aufgabe 6 für Pascal-Anwender statt Aufgabe 1. 6) Schreiben Sie ein PASCAL-Programm, um den größten gemeinsamen Teiler zweier natürlicher Zahlen nach dem folgenden Euklidischen Algorithmus zu berechnen: a) Ziehe die kleinere der beiden Zahlen von der größeren ab. b) Ist das Ergebnis = der kleineren Zahl, so ist das Ergebnis der größte gemeinsame Teiler. c) Ist das Ergebnis <> dem Subtrahenden (das ist die Zahl, die abgezogen wurde), so wähle das Ergebnis und den Subtrahenden und beginne bei a). Das Programm soll folgende Anforderungsliste erfüllen: 5) 1) Aufbau als Funktion mit 2 Parametern, den beiden natürlichen Zahlen (positive ganze Zahlen). 2) Es soll sichergestellt werden, daß nur positive Zahlen verarbeitet werden. Sehen Sie entsprechende Korrekturmaßnahmen oder Fehlermeldungen vor. Welches Ergebnis geben Sie zurück, wenn ein Parameter oder wenn beide Parameter negativ sind? 3) Rückgabe des Ergebnisses als Funktionswert. Die Funktion soll ganze Zahlen zurückgeben. 4) Berücksichtigen Sie, daß versehentlich die Funktion mit zwei gleichen Zahlen aufgerufen werden kann. Rekursive Bearbeitung ist zulässig aber nicht vorgeschrieben (Wer dies nicht versteht, kann das ignorieren). Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 11 Name: Vorname: Matrikelnr: Studiengang: Bauingenieurwesen Studiensemester: Anzahl der abgegebenen Blätter: Ich habe die Klausuraufgaben selbständig gelöst und war im Vollbesitz meiner Kräfte. Unterschrift: Bitte geben Sie die Klausur mit Aufgabenblatt ab und kennzeichnen Sie jedes Blatt mit Name und Matrikelnummer. Aufgabe erz. Punkte 1 2 3 4 5 Sum Note Bitte lösen Sie Sie die Programmieraufgaben in den Programmiersprachen VBA für EXCEL oder Pascal. Aufgabe 6 ist ausschließlich Pascalanwendern anstelle Aufgabe 1 vorbehalten. Diese müssen dann auch die Aufgaben 4 und 5 in Pascal beantworten. ( 1, Matrix a = ( ( 4, Bild 1: 1) 2, 5, 3 ) ) 6 ) ( 1, Matrix b = ( 2, ( 3, 2, 3, 4, 3 ) 4 ) 5 ) Matrizen Ausführung von Programm Aufgabe_1 Bild 1 zeigt den Inhalt zweier Matrizen. Stellen Sie sich vor, Sie würden ein Unterprogramm Aufgabe_1 nach Bild 2 aufrufen. Die Parameter a und b seien Matrizen nach Bild 1, so daß die Zeilen durch den ersten Index und die Spalten durch den zweite Index bezeichnet würden. Beantworten Sie die folgenden Fragen: a) Welche Werte müssen die Parameter l, m und n tragen, damit das Programm alle Elemente der Matrizen a und b aus Bild 1 verarbeitet. Grundlagen der EDV .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Trier Seite 12 b) Wie müssen die Variablen a, b und c im rufenden Programm deklariert sein, damit c in doppelter Genauigkeit berechnet werden kann. c) Schreiben Sie einen beispielhaften Aufruf für das Unterprogramm Aufgabe_1 auf. d) Berechnen Sie die Werte der Matrix c nach Ablauf des Programms Aufgabe_1. Benutzen Sie als Eingangsparameter für l, m und n die Werte aus Aufgabe 1a) und für a und b die Werte aus Bild 1. Sub Aufgabe_1(l; m; n; a; b; c) Dim sum Als Doppelt Dim i; j; k Als Ganz Für i = 1 Bis l Für j = 1 Bis n sum = 0# Für k = 1 Bis m sum = sum + a(i; k) * b(k; j) Nächste k c(i; j) = sum Nächste j Nächste i Ende Sub Bild 2: Programm Aufgabe_1 2) Erläutern Sie den Begriff Virtueller Speicher. 3) Erläutern Sie den prinzipiellen Aufbau einer Nachricht, die über ein Netzwerk versendet wird, das nach dem Busprinzip arbeitet. 4) Erläutern Sie an einem Beispiel den grundlegenden Aufbau einer FÜR Schleife (Pascal for Schleife). Stellen Sie den Ablauf in einem Nassi-Schneidermann Diagramm (Struktogramm) dar. Wird das Abbruchkriterium am Anfang oder am Ende der Schleife geprüft? 5) Schreiben Sie ein Funktionsunterprogramm, welche zwei eingehende Parameter vom Datentyp einfachgenaue Gleitkommazahl miteinander vergleicht und den größeren der beiden Parameter als Funktionswert zurückgibt. Grundlagen der EDV .. Aufgabe 6 nur für Pascal-Anwender statt Aufgabe 1. 6) Schreiben Sie ein PASCAL-Programm, um Meßwerte, die von einer Hausverwaltung an Kalorimetern abgelesen wurden, über die Tastatur einzugeben und auszuwerten zu lassen. Je Meßwert erfolgen zwei Eingaben: Nummer des Aufnehmers (Meßgerät) und Meßwert. Die Meßwerte liegen in einem Bereich von 0.0Kcal bis 999.99Kcal. Zu diesen Meßwerten sollen folgende Berechnungen durchgeführt werden: Anzahl der Meßwerte: Mittelwert der Meßwerte: Standardabweichung der Meßwerte: Das Programm soll folgende Anforderungsliste erfüllen: 1) Eingabedialog für Aufnehmernummer und Meßwert. 2) Verarbeitung in einfacher Genauigkeit. Aufnehmernummer (Gerätenummer) als Ganzzahl. 3) Das Programm soll beendet werden, wenn eine Aufnehmernummer <= 0 eingegeben wird. Formeln: Mittelwert: xm = ( xi) / n Standardabweichung: s = Grundlagen der EDV ( (xi2) - (xi)2/n)/(n-1) .. Prof. Dr.-Ing. Fritz Nikolai Rudolph Fachbereich Angewandte Informatik Fachhochschule Rheinland-Pfalz Abteilung Trier Seite 14 Grundlagen der EDV ..