Universität Duisburg - Essen Campus Essen Flächentragwerke...

24

Transcript of Universität Duisburg - Essen Campus Essen Flächentragwerke...

Page 1: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 1

Universität Duisburg - EssenCampus Essen

Fachgebiet Statik & Dynamik derFlächentragwerke

Fachprüfung - Bauinformatik / Teil 1

Prof. Dr.-Ing. Carolin Birk

Name : .........................................................................

Matr.- Nr.: .........................................................................

Diplomprüfungsordnung für den Studiengang Bauingenieurwesenmit den Abschlüssen

Bachelor of Science und Master of Science 2016

Bearbeitungszeit 90 Min. (1,5 Stunden)Aufgabe 1 - 9

Aufgabe Punkte erreicht Bemerkung

1 5

2 5

3 10

4 10

5 15

6 15

7 10

8 10

9 10

Summe 90

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 2: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 2

Aufgabe 1

Vervollständigen Sie die nachfolgende Tabelle durch Darstellung der gegebenen Zahlen zurvorgegebenen Basis b.

Anmerkung:Zi�ern gröÿer 9 werden wie üblich beginnend mit A aus dem Alphabet entnommen.

b = 5 b = 7 b = 12231

1529B

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 3: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 3

Aufgabe 2

(a) Ermitteln Sie das b-Komplement der in der Tabelle gegebenen Zahlen unter Berücksich-tigung der gegebenen Zi�ernbreite n.

Zahl b n b-Komplement11234 5 616162 7 51B14A 12 7

(b) Korrigieren Sie die in der nachfolgenden Tabelle gegebenen Zahlen zur Basis b.Die Zi�ern der Zahlen beziehen sich auf das Zahlensystem zur Basis b.

Zahl b Korrekte ZahlendarstellungBAB12 5AGE19 1189CC 6

Anmerkung:Zi�ern gröÿer 9 werden wie üblich beginnend mit A aus dem Alphabet entnommen.

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 4: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 4

Aufgabe 3

Gesucht ist die Datenstruktur des dargestellten Tragwerks bestehend aus 3 Scheiben und einemStab.

500

200 400 200

2 kN4 kN

z

x1 2 3

4 5 6

1 2

3

4

Die Datenstruktur besteht aus einem Feld für Scheiben, einem Feld für Stäbe, einem Feldfür Knoten und einem Feld für die Belastungen. Die Nummer der zu speichernden Objekte(Scheiben, Stäbe, Knoten, Belastungen) ist mit dem Feldindex (Arrayindex) identisch.

Eine Scheibe (hier Element 1, 2 und 3) wird beschrieben durch die Nummer der anschlieÿendenKnoten k1, k2, k3 sowie durch die Scheibendicke t und den Elastizitätsmodul E.

Ein Stab (hier Elemente 4) wird beschrieben durch die Nummer der anschlieÿenden Knoten k1und k2 sowie durch die Querschnittsfäche A und den Elastizitätsmodul E.

Ein Knoten (hier Knoten 1 bis 6) wird beschrieben durch dessen Koordinatenwerte x und z.Zudem ist die Lagerung durch die Kenner der Verschiebungen tx, tz fest zu legen. Die Kennersind für einen gehaltenen Freiheitsgrad auf 1 und für einen verschieblichen Freiheitsgrad auf 0zu setzen.

Eine Belastung wird beschrieben durch ihren Belastungswert L und die Nummer des Knotensk, der die Belastung erhält. Die Lastrichtung wird durch den Winkel w gegen die positivex-Achse fest gelegt.

(a) Zeichnen Sie ein ER-Diagramm für die Datenstruktur des dargestellten Tragwerks.

(b) Übertragen Sie das ER-Diagramm aus (a) in eine VBA-Datenstruktur.

(b) Implementieren Sie eine Datenstruktur für das dargestellte Tragwerk unter Berücksich-tigung der gegebenen Werte. Beachten Sie auch, dass Null-Werte aufgrund der Null-Initialisierung nicht explizit gesetzt werden müssen. Es sind die genannten Bezeichner zuverwenden.

Für die Querschnittswerte und den Elastizitätsmodul sind die folgenden Werte zu setzen:A = 8, 25 cm2, t = 2, 0 cm und E = 21000 kN/cm2

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 5: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 5

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 6: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 6

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 7: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 7

Aufgabe 4

(a) Schreiben Sie eine Funktion (function) zur Berechnung des ln(2)Wertes unter Verwendungder folgenden Reihendarstellung.

ln(2) =2

∞∑k=0

1

(2k + 1) 9k

Verwenden Sie zur Implementierung eine for sowie eine do Schleife. Zur näherungswei-sen Berechnung sollte der Endwert von k durch den Wert einer Variablen n vorgegebenwerden.

(b) Eine Klasse Dreieck (VBA-Klassenmodul) wird beschrieben durch die Nummern derEckknoten und durch einen ganzzahligen Farbwert. Zudem erhält die Klasse eine Metho-de getSchwerpunkt zur Berechnung des Dreieck-Schwerpunktes. Zeichnen Sie das UML

Klassendiagramm dieser Klasse.

(c) Welchen Wertebereich umfasst eine 6-Bit Integer Variable für

� vorzeichenlose (d.h. positive) ganze Zahlen und

� vorzeichenbehaftete (d.h. positive und negative) ganze Zahlen.

(d) Wie groÿ sind die folgenden VBA-Datentypen in Bytes:integer, long, single und double.Erläutern Sie die Unterschiede der genannten Datentypen.

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 8: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 8

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 9: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 9

Aufgabe 5

(a) Kennzeichnen und erläutern Sie die syntaktischen Fehler des nachfolgenden Programms.

(b) Korrigieren Sie die semantischen Fehler des Programms.

Das Programm sortiert ein Feld mit n Punktdaten nach dem Verfahren der Auswahlsortierung(Selectsort) nach aufsteigender x-Koordinate. Ein Punkt wird beschrieben durch eine Daten-struktur mit den Strukturelementen x, y, z und r. Die Strukturelemente x, y und z enthalten diePunktkoordinaten als Gleitkommazahl (z.B. x = 1.0 / y = 4.0 / z= 2.5), das Strukturelementr enthält einen ganzzahligen Wert.

Die Auswahlsortierung beginnt beim ersten Listenplatz und sucht das minimale Element biszum Ende der Liste. Dieses wird mit dem ersten Listenelement vertauscht. Im nächsten Schrittwird das minimale Element aus der verbleibenden Liste ermittelt und an die Stelle 2 gesetzt.Dies wird für jede weitere Stelle der Liste fort gesetzt, bis das Listenende erreicht ist.

Beachten Sie bitte auch die Anweisung option explicit !

Listing 1: Zu untersuchendes Programm

1 option explicit

2

3 type Punkt

4 x as integer

5 y as boolean

6 z as string

7 r as float

8 end type

9

10 function sortiere (P() as Punkt , n as integer)

11 max As integer

12 imax as double

13 for all i and while max = ok

14 max = ok

15 imax = start

16 do

17 if max > P(i)->y then

18 max = P(i)->z

19 imax = boolean(i)

20 endif

21 loop until i=1 to 2 while imax = ok

22 call tausche (P,i,imax)

23 loop

24 end sub

25

26 function vertausche (i as integer , j as integer , x as Punkt)

27 x(i) = x(j)

28 x(j) = x(i)

29 end sub

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 10: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 10

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 11: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 11

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 12: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 12

Aufgabe 6

Gesucht ist der VBA-Code einer Funktion (function) MatMultAndMean zur Multiplikationzweier quadratischer Matrizen X und Y der Dimension n zur Produktmatrix Z, siehe (1).

Zusätzlich zur Multiplikation der Matrizen ist der Mittelwert aller Matrixelemente der Ergeb-nismatrix Z zu berechnen und an das aufrufende Programm zurück zu geben, siehe (2).

Für die Produktmatrix gilt

Z = X · Y , Zi,j =n∑

k=1

X i,k · Y k,j (1)

Der Mittelwert aller Matrixelemente einer quadratischen Matrix ermittelt sich wie folgt:

z̄ =1

n2

n∑i=1

n∑j=1

Zi,j (2)

Die Funktion MatMultAndMean ist mit folgender Parameterliste zu implementieren.

Listing 2: MatMultAndMean

1 Function MatMultAndMean( X() As double , Y() As Double , _

2 Z() As Double , n As Integer) _

3 as Double

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 13: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 13

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 14: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 14

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 15: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 15

Aufgabe 7

(a) Nennen Sie zwei Möglichkeiten, mit deren Hilfe Daten zwischen VBA-Programmen undEXCEL-Tabellen ausgetauscht werden können.

(b) Geben Sie je ein Beispiel.

Abbildung 1: EXCEL-Tabelle

(c) Gesucht ist der VBA-Code, der in die in Abb. 1 dar-gestellt Tabelle die Daten der Funktion f = x2 − 1schreibt. Es ist der Wertebereich von x ∈ [−10, 10] inSchritten von 0.1 auszugeben.

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 16: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 16

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 17: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 17

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 18: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 18

Aufgabe 8

(a) Wann wird der Konstruktor einer Klasse aufgerufen und was ist seine Aufgabe?

(b) Beschreiben Sie die Wirkungsweise eines sogenannten Garbage Collectors. Welche Aktio-nen sind i.A. bei fehlendem Garbage Collectors explizit auszuführen?

(c) Gegeben sei eine Klasse Rechteck. Erläutern Sie den Unterschied in den Deklarationenin Listing 3

Listing 3: Klasse Rechteck

1 dim r1 as Rechteck

2 dim r2 as new Rechteck

(d)Rechteck

+ double : x0

+ double : y0

+ double : dx

+ double : dy

+ init(x,y,dx,dy)

+ double getFlaeche()

+ move(xt,yt)

Gegeben ist der Klassenmodul Rechteck mit den Eck-Koordinatenx0 und y0 sowie den Seitenlängen dx und dy.

Die Methode init initialisiert das Rechteck, d.h. es werden dieEckkoordinaten und die Seitenlängen des Rechtecks gesetzt.

Die Methode getFlaeche berechnet die Fläche und gibt diesean das aufrufende Programm zurück.

Die Methode move verschiebt das Rechteck um den Vektor xt

und yt.

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 19: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 19

Schreiben Sie ein Programm mit folgenden Schritten.

� Erzeugen eine Rechteck Instanz.

� Initialisieren des Rechtecks mit Eckkoordinaten (1, 2) und Seitenlängen (3, 4).

� Berechnen und speichern der Rechteck�äche in einer Variablen f.

� Verschieben des Rechtecks um den Vektor (10, 2).

� Explizites Löschen der Rechteck Instanz.

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 20: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 20

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 21: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 21

Aufgabe 9

Um Daten zu speichern werden oftmals Felder (Array-Container) und Listen (List-Container)eingesetzt. Beide Speicherarten haben Vor- und Nachteile.

(a) Beschreiben Sie die Schritte in Pseudocode, die erforderlich sind, um ein Feld zu erweitern.Achten Sie dabei darauf, dass bereits gespeicherte Daten nicht verloren gehen.

Knoten

+ Knoten : nKno

+ Variant : data

+ Integer : id

Eine einfache Liste kann aufgebaut werden unter Verwendung derKlasse Knoten. Daten werden im Attribut data gespeichert. DieNummer des Knotens wird in das Attribut id eingetragen. Die Ver-knüpfung zum folgenden Knoten-Objekt erfolgt über den Objektzei-ger nKno.

Knoten

Knoten: nKno

Variant: data

Integer: id

Knoten

Knoten: nKno

Variant: data

Integer: id

Abbildung 2: Beginn eines Listen-Containers

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 22: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 22

Es ist ein Programm Suche zu schreiben, das den Knoten mit der id = 15 ermittelt und dessenReferenz zurück gibt. Die Knoten sind bereits in einer Liste (siehe Abbildung 2) gespeichert.Beachten Sie, dass das Ende der List erreicht ist, falls das Attribut nKNo den Wert Nothingenthält (If [Variable] Is Nothing then). Wird der Knoten mit der id = 15 nicht gefunden,so ist vom Programm Nothing zurück zu geben.

(b) Zunächst ist ein Pseudo-Code1 für das Programm Suche zu entwickeln.

1Ein Pseudo-Code beschreibt die Programmschritte in umgangssprachlicher Art.

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 23: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 23

(c) Der Pseudo-Code aus Teil (b) ist nun in ein VBA Programm umzusetzen.Hierbei ist vom gegebenen Programm-Code (Listing 4) auszugehen.

Listing 4: Rahmen des Programms Suche

1 ' id...: Nummer des gesuchten Knotens

2 ' sKno.: Liste der Knoten

3 function Suche(id as Integer , sKno as Knoten) as Knoten

4

5 ' Objektvariablen (Zeigervariablen) für Listensuche

6 Dim nKno As Knoten ' nächster Knoten

7

8 ' Start -der Suche

9 set nKno = sKno

10

11 ...

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40 end function

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.

Page 24: Universität Duisburg - Essen Campus Essen Flächentragwerke ...info.statik.uni-due.de/Lehre/Bauinformatik-1/Klausuren/Klausur-WS1819... · struktur mit den Strukturelementen x, y,

B.Sc. - Klausur � Bauinformatik / Teil 1 � WS 18/19 Mittwoch, den 13.02.2019 24

Hinweis: Jedes lose Blatt der Ausarbeitung ist rechts oben mit Namen und Matr.-Nr. zu kennzeichnen.

Lose, nicht gekennzeichnete Blätter werden nicht bewertet. Beidseitig beschriebene Blätter

sind als solche zu kennzeichnen.