FB18 - Das Forum für Informatik

fb18.de / Diplom Informatik / Unterbereich Grundstudium / Praktische Informatik

p1.aufgabeblatt 09?!

p1.aufgabeblatt 09?! 2005-01-02 14:40
Anonymer User


hallo,

sagt mal, ist bei aufgabe 1b der wert bei dem beispiel eventl. falsch? ich komme auf ein anderes ergebnis. und ich weiß nicht, wo mein fehler liegt.

(a) Definieren Sie drei Funktionen fuss2meter, zoll2meter, meilen2meter zur Umrechnung
von englischen L¨angenangaben in Fuß, Zoll oder Meilen in Meter. Ein englischer
Zoll (inch) entspricht 2,54 cm, ein englischer Fuß (12 Zoll) entspricht 30,48 cm, eine
englische Meile (5000 Fuß) entspricht 1523,968 Meter.
Beispiel (Fuss2meter 2.0) ergibt 0.6096.


(b) Definieren Sie weiterhin eine allgemeinere Funktion unit2meter zur Konversion beliebiger
L¨angenangaben in Meterangaben. Die Funktion soll zwei Werte nehmen: die
numerische L¨angenangabe und die Einheit. Beispiel: (unit2meter 2.0 ’Zoll) ergibt
0.6096.

auf die 0.6096 komme ich nicht. mein ergebnis sieht so aus:
a)
(define (fuss2meter x)
(* 0.3048 x))

(define (zoll2meter x)
(* 0.0254 x))

(define (meilen2meter x)
(* 0.1523968 x))
b)
(define (unit2meter x unit)
(case unit
((zoll) (zoll2meter x))
((fuss) (* x 0.3048))
((meilen) (* x 0.1523968))))

(unit2meter 2.0 'zoll)
0.0508

häh?! help… a und b sieht irgendwie identisch aus, oder?
ich glaube, dass ich den fehler übersehe. bestimmt voll simple. aber ich komme einfach (in meiner momentanen auffassung nicht darauf [img]http://www.fb18.de/gfx/8.gif[/img]

danke für eure hilfe…

Re: p1.aufgabeblatt 09?! 2005-01-02 16:06
nfsweyoun
Der auf dem Aufgabenzettel genannte Beispielwert stimmt nicht. Ich glaube mich zu erinnern, daß uns diese Info in der letzten Übungssitzung vor den Ferien mitgegeben wurde. Also mach Dir keinen Kopf… ;)

Re: p1.aufgabeblatt 09?! 2005-01-02 16:15
Anonymer User


na wenns so ist, puh…


Re: p1.aufgabeblatt 09?! 2005-01-02 17:56
nfsweyoun
b)
(define (unit2meter x unit)
(case unit
((zoll) (zoll2meter x))
((fuss) (* x 0.3048))
((meilen) (* x 0.1523968))))

Was mir bei dem Code noch aufgefallen ist: Auch bei Fuß und Meilen ließen sich Funktionen wiederverwenden. Kleiner Wink… ;-)