1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen...

31
1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: - Einfache und strukturierte Datentypen kennen. - Die OVAL-Methode zur Lösung von mathematischen Problemen einsetzen können

Transcript of 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen...

Page 1: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

1(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Datenstrukturen und Datentypen

Lernziele:

- Einfache und strukturierte Datentypen kennen.

- Die OVAL-Methode zur Lösung von mathematischen Problemen einsetzen können

Page 2: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

2(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Datentypen

Abstrakte Datentypen (Abstrakte Rechen-strukturen) stellen die Zugriffssicht für eine Sorte oder eine Menge von Sorten dar.

Sie definieren die Operationen mit ihren Funktionalitäten und den geforderten Eigenschaften für eine Sorte.

Page 3: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

3(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Beispiele für einfache Datentypen

Form = {Rechteck,Quadrat,Ellipse,Kreis}

Farbe = {rot,grün,blau}

Geschlecht = {männlich,weiblich}

Wochentag = {Montag,Dienstag,Mittwoch,Donnerstag, Freitag,Samstag,Sonntag}

Fahrzeug = {Zug,Bus,Auto,Schiff,Flugzeug}

Page 4: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

4(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Einfache Standardtypenin der Informatik

integer (eine Teilmenge der ganzen Zahlen)

boolean (true,false)

char (Menge der Schriftzeichen z.B. gemäss ASCII)

real (eine Teilmenge der reellen Zahlen)

Page 5: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

5(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

integer

Elemente: aus einer Teilmenge der Menge der ganzen Zahlen

Operationen: +, -, *, div, mod

(div ist die Ganzzahldivision, mod liefert den Rest bei der Ganzzahl-division)

Page 6: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

6(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

boolean

Elemente: true, false

Operationen: NOT, AND, OR

Page 7: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

7(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

char

Elemente: aus einer Menge Schrift- und Steuerzeichen,kein allgemeingültiger Standard,meist ASCII

Operationen: Es sind keine Operatoren definiert.

Page 8: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

8(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

real

Elemente: aus einer Teilmenge der Menge der reellen Zahlen.Darstellung mit Mantisse und Exponent (z.B. 2.75343 E-12)

Operationen: +, -, *, /Achtung: Bei Ueberlauf wird die Zahl abgeschnitten.

Page 9: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

9(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Vergleichsoperatoren

Für alle Standardtypen kann man die Vergleichsoperatoren verwenden:

=, <, >, <=, >=, <>

mit dem Ergebnistypen BOOLEAN

Page 10: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

10(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Weitere einfache Datentypen

Aufzählungstyp: z.B.Wochentag = (Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, Sonntag);

Ausschnittstyp: z.B.Werktage = Montag .. Freitag;Zahlenbereich = 1 .. 10;

Page 11: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

11(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Strukturierte Datentypen

array Vektor, Matrix

string Zeichenkette

record Verbund, z.B. für die Aufnahme einer Adresse (Name,Vorname,Strasse,PLZ,Ort)

set Zur Angabe von Mengen

Page 12: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

12(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Aufgabe und Lösung

Welchem Standard-Datentyp kann man folgende Werte zuordnen?

a) kb) 5.6E2c) 3,1456d) 0

e) -4E-2f) .1E3g) 31456e-4h) Pi

Page 13: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

13(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Aufgabe und Lösung

Welchem Standard-Datentyp kann man folgende Werte zuordnen?

a) k charb) 5.6E2 realc) 3,1456 -d) 0 integer

e) -4E-2 realf) .1E3 realg) 31456e-4 realh) Pi -

Page 14: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

14(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Aufgabe

Entwerfen Sie eine geeignete Datenstruktur, um Bücher in einen Katalog eintragen zu können.

Page 15: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

15(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Aufgabe

Entwerfen Sie eine geeignete Datenstruktur, um Bücher in einen Katalog eintragen zu können.

Autor stringTitel stringVerlag stringOrt stringJahr integerISBN-Nr. string

Page 16: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

16(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Modell

Objekte

Variable und Konstanten

Aussagen

Lösung

Validierung

Die OVAL-Methode

Page 17: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

17(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Ein Beispiel aus der Physik

Ein Auto fährt mit 100 km/h. Der Autofahrer sieht nun 150 m weiter vorne eine Polizeikontrolle und bremst nach einer Reaktionszeit von 0.5 s ab, sodass das Auto beim Kontrollpunkt mit 60 km/h vorbei-fährt.

Mit welcher Bremsbeschleunigung muss das Auto gebremst werden?

Page 18: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

18(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Zeichnung

A

P

v2v1

s

sR sB

Page 19: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

19(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Modell

Die Kinematik stellt Bewegungsgleichungen für die gleichmässig beschleunigte und die unbeschleunigte Bewegung zur Verfügung:

0

002

2vatv

stvta

s

+=

++=

Page 20: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

20(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Objekte

O1: Bewegung während der Reaktionszeit

O2: Bremsbewegung

tvsR 1=

1

012

2vatv

stvta

s

B

B

+=

++=

Page 21: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

21(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Variable und KonstanteName Bedeutung Typ Bereich/WertsR Reaktionsweg rational >0v1 Anfangsgeschwindigkeit rational 100km/htR Reaktionszeit rational 0.5ssB Bremsweg rational >0a Bremsbeschleunigung rational <0tB Bremszeit rational >0s0 Wegvorgabe rational 0vB Zielgeschwindigkeit rational 60km/hs Gesamtstrecke rational 150m

Page 22: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

22(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Aussagen

• Der Gesamtweg ist gleich der Summe aus Reaktions-weg und Bremsweg

• Modell Reaktionsbewegung

• Modell Bremsbewegung

s=sR +sB

sR =v1tR

sB =a2

tB2 +v1tB

vB =atB +v1

4 Gleichungen/4 Variable

Page 23: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

23(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Lösung (mit Maple)

> s:=150:v1:=100/3.6:vB:=60/3.6:tR:=0.5:

gleichung1:=s=sR+sB;

gleichung2:=sR=v1*tR;

gleichung3:=sB=a/2*tB^2+v1*tB;

gleichung4:=vB=a*tB+v1;

L:=solve({gleichung1,gleichung2,gleichung3, gleichung4},{sR,sB,a,tB});

L := {sB = 136., tB = 6.12, a = -1.81, sR = 13.9}

Page 24: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

24(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Validierung

L := [{sB = 136., tB = 6.12, a = -1.81, sR = 13.9}]

Die Lösung ist eindeutig.

Die Beschleunigung ist tatsächlich negativ.

Mit einem Betrag von 1.81 m/s2 ist die Beschleunigung beim Bremsen auch noch erträglich.

Page 25: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

25(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Aufgabe

Es sollen zylindrische Konservendosen aus Metall produziert werden. Bekannt sind die Produktionskosten pro cm2 Mantelfläche, sie betragen Fr. 0.0014. Für die Herstellung der Grundflächen ist mit dem doppelten Quadratzentimeter-preis wie für den Mantel zu rechnen, weil die Grundflächen noch durch eine Wellpresse durch müssen.Der Gesamtpreis für die Herstellung einer Konservendose wird mit Fr. 1.- vorge-geben. Bestimmen Sie die Produktionsmasse (Radius der Grundfläche und Höhe) einer Dose, wenn der Volums-inhalt 1000 cm3 sein soll.

Page 26: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

26(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Modell

Die Stereometrie gibt Beziehungen zwischen Radius der Grundfläche, Höhe, Volumen und Oberfläche des Zylinders an.

Mantel M =2rπh

Grundfläche G =r2π

Oberfläche F =M +2G

Volumen V =r2πh

Page 27: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

27(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Objekte

O1: Konservendose [r, h]

Das Objekt Konservendose ist mit Radius r und Höhe h voll charakterisiert und damit gegeben. Volumen, Mantel und Oberfläche und auch der Gesamtpreis können damit berechnet werden

Page 28: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

28(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Variable und Konstante

Name Bedeutung Typ Bereich/Wertr Radius real >0h Höhe real >0G Grundfläche real >0M Mantel real >0V Volumen real 1000p Preis pro cm^2 Mantelfläche real 0.002GP Geamtpreis real 1

Page 29: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

29(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Aussagen

• Das Volumen wird aus r und h berechnet.

• Die Grundfläche ist r2π.

• Der Mantel ist 2rπh.

• Der Gesamtpreis ist gleichPreis der Grundflächen und Preis für den Mantel.

4 Gleichungen/4 Variable

V =r2πh

G =r2π

M =2rπh

GP =2⋅G ⋅2p+M ⋅ p

Page 30: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

30(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Lösung (mit Maple)

> restart:Digits:=3:V:=1000:p:=0.0014:GP:=1:# GleichungssystemG1:=V=r^2*Pi*h;G2:=G=r^2*Pi;G3:=M=2*r*Pi*h;G4:=GP=2*G*2*p+M*p;# LösungL:=solve({G1,G2,G3,G4},{r,h,G,M});

L := {sB = 136., tB = 6.12, a = -1.81, sR = 13.9}

Page 31: 1 (C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Datenstrukturen und Datentypen Lernziele: -Einfache und strukturierte Datentypen kennen.

31(C) 1999-2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz

Validierung

L := {M = -231., G = 236., h = 4.23, r = -8.67},{h = 23.6, M = 545., G = 42.3, r = 3.67},{r = 5.00, G = 78.6, M = 400., h = 12.7}

Mögliche Lösungen sind die 2. und die 3. Lösung. Die erste fällt aus, weil r nicht negativ sein darf.

Mir gefällt die 3. Lösung besser, weil ich das Verhältnis zwischen Durchmesser und Höhe besser finde.