• Keine Ergebnisse gefunden

Arbeitsblatt Datentypen

N/A
N/A
Protected

Academic year: 2021

Aktie "Arbeitsblatt Datentypen"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

ä Arbeitsblatt Datentypen - 1/2 - Prof. Dr.-Ing. Hermann

Arbeitsblatt Datentypen

Vorbereitung

Beginnen Sie mit dem Endstand aus Video s3e3. Sie finden diesen Endstand in dem Archiv structdemo_endstand.zip.

Falls Sie Visual Studio benutzen, können Sie das Projekt in dem Archiv gleich benutzen.

Andernfalls importieren Sie die Quelldateien structdemo.c und structdemo.h in Ihre Entwicklungsumgebung für C.

Aufgabe 1

Bisher wird die Kategorie des POI nicht ausgegeben. Schreiben Sie dazu die in Abbildung 1 begonnene Funktion fertig.

// Ausgabe der Kategorie

void ausgabe_kategorie(kategorie_t kat) {

}

Abbildung 1: Funktion zur Ausgabe einer Kategorie

Rufen Sie dann die Funktion in der Funktion zur Ausgabe eines POI auf und testen Sie das Ergebnis. Sie können selbst bestimmen, welchen Text Sie jeweils ausgeben wollen.

Aufgabe 2

In Aufgabe 1 wird der Parameter als Wert übergeben (call by value), nicht als Zeiger auf den Wert (call by reference).

1. Ist es überhaupt möglich, einen Zeiger auf eine Aufzählung zu übergeben?

2. Falls ja: Warum wird es hier nicht getan?

Aufgabe 3

Einige Zeit nach der Entwicklung des Programms wurde die Aufzählung um das Element AUSSICHTSPLATTFORM erweitert.

Erweitern Sie die Funktion aus Aufgabe 1 so, dass für (zur Entwurfszeit) unbekannte Kategorien der Text Andere ausgegeben wird.

Aufgabe 4

Analog zu der Positionsangabe ist es sinnvoll, auch die Adressangabe in eine eigene Struktur zu verpacken.

Definieren Sie eine Struktur vom Typ adresse_t so, dass darin in je einem Element ein Name,

eine Postleitzahl und eine Ortsangabe untergebracht werden können. Die Elementnamen

können Sie frei wählen. Für die Postleitzahl verwenden Sie den am besten geeigneten Integertyp

(siehe Video, Kapitel 1).

(2)

ä Arbeitsblatt Datentypen - 2/2 - Prof. Dr.-Ing. Hermann Aufgabe 5

Schreiben Sie jetzt das Programm so um, dass die neue Struktur auch genutzt wird. Führen Sie dazu dieselben Schritte durch, die auch bei dem „Herausziehen“ der Position nötig waren.

Testen Sie das Ergebnis!

Aufgabe 6

Alle Strukturen eines Typs sind in C gleich groß. Das gilt auch für die Struktur, die Sie eben in Aufgabe 5 definiert haben, obwohl die Adressangaben unterschiedliche Länge haben.

Wie ist das möglich?

Hinweis: Sehen Sie sich den Datentyp der Elemente an.

Aufgabe 7

Zu Positionen gehört auch eine Höhenangabe.

1. Erweitern Sie die Struktur geopos_t um eine Höhenangabe. Höhen werden im Bereich [-400, +9999]

liegen. Suchen Sie sich den dafür am besten passenden Datentyp aus.

2. Ändern Sie das Programm dann so ab, dass nur dem Schloss zu Beginn die Höhe 940 zugewiesen wird. Lassen Sie bei der Ausgabe auch die Höhe mit ausgeben.

3. Welche Höhe wird bei dem Restaurant ausgegeben?

Aufgabe 8

Höhenangaben sind nicht immer verfügbar. Falls bei der Initialisierung die Höhe nicht angegeben wird, soll auch bei der Ausgabe diese Angabe weggelassen werden.

Führen Sie einen neuen Aufzählungstyp ein, der nur zwei Elemente hat (DEFINIERT, NICHT_DEFINIERT) und sorgen Sie dafür, dass das Element NICHT_DEFINIERT) den Wert 0 zugewiesen bekommt.

1. Nehmen Sie den Aufzählungstyp auch als ein Element mit in die Struktur geopos_t mit auf.

2. Ändern Sie dann das Programm so ab, dass bei der Ausgabe die Höhe nur ausgegeben wird, wenn die Höhe entweder nicht 0 ist oder wenn die Höhe als DEFINIERT gekennzeichnet ist.

Aufgabe 9

Bei der Erweiterung nach Aufgabe 8 müssen Sie die Initialisierung (sofern sie wie hier im Programm erfolgt) anpassen. Wenn man die Elemente der Struktur geopos_t geschickt wählt, kann man sich dabei Arbeit sparen.

Versuchen Sie die Reihenfolge zu finden, die den geringsten Aufwand bei der Initialisierung

erfordert und nutzen Sie das dann auch.

Referenzen

ÄHNLICHE DOKUMENTE

In den letzten zwei Jahrzehnten hat sich unsere Genossenschaft nicht nur zu einem stabilen Wohnungsunternehmen entwickelt, sondern sich im Interesse und Auftrag ihrer stets wachsenden

Wenn Sie Sympathie mit Grünen Themen haben und es für wichtig halten, dass wir hier vor Ort auch einen Beitrag zu Grüner Politik leisten, suchen Sie bitte das Ge- spräch mit

Seit einem Menschenalter verwendete man dabei das Eisen, und in der Tat hat Eiffel selbst dieses bei seinem Turm benutzte Konstruktionssystem zuerst an der über den Douro

Eine noch tiefere Temperatur er- reicht man, wenn aus einem Reservoir von verflüssigtem Helium das Gas abgepumpt wird, so dass der Flüssigkeit zusätzlich Verdampfungswärme

Da sich vielleicht nicht mehr alle an den Text erinnern oder auch nicht jedes Mitglied das Buch im Regal stehen hat, zitieren wir den Passus zur Namensgebung (S. 16/17) hier

Für das im Jahr 2010 eingeführte Mitgliedsdarlehen, mit dem Mitglieder der Genossenschaft ihr Geld für neue Projekte leihen, hat es in den letzten drei Jahren noch einmal

Alternativ werden Mitglieder, die den Newsletter erhalten, ihre Stimmen für die besten Fotos auch über das Internet abgeben können (zur Aufnahme in den Verteiler bitte eine E-Mail

Wer den Jahresabschluss oder auch einen der anderen Berichte über die Tätigkeit von Vorstand und Aufsichtsrat noch einmal nachlesen möchte, die Papierversion aber nicht mehr