FB18 - Das Forum für Informatik

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

P1 Blatt 11 Aufg. 1

P1 Blatt 11 Aufg. 1 2004-01-12 16:21
Anonymer User
Hallo zusammen. Ich brüte jetzt schon eine weile über Aufgabe eins des 11ten P1 Blattes. Gibt es auch einen Ansatz das ganze ohne Rekursion hinzukriegen? Hab's mit Rekursion versucht aber mal abgesehen davon dass ich das nicht hinkriege machen wir das auch erst in ein paar Wochen in der Vorlesung.
Hab mich da ziemlich festgefahren und bei meiner rekursiven Definition meckert Dr Scheme immer darüber, dass irgendwelche Argumente nicht seinen Erwartungen entsprechen.

Hilfe?

Re: P1 Blatt 11 Aufg. 1 2004-01-12 20:39
sChQrf
rekursion war heute in der vorlesung dran… iteration auch… oder worauf willst du hinaus?

weiss zwar noch nit wie ich anfang aber schwer sa der bogen net aus

Re: P1 Blatt 11 Aufg. 1 2004-01-12 20:57
tekai
die aufgabe ist auch nicht schwer, wenn man denn rekursion geschnallt hat. im prinzip braucht man nur vier funktionen aus scheme, car, cdr, =, und -.

vielleicht kannst du ja posten worüber dr. scheme meckert, aber bitte nicht die ganze lösung.

Re: P1 Blatt 11 Aufg. 1 2004-01-12 20:58
BigBFD
guck dir einfach mal slide 187 an, dann wird alles gut :-)

Re: P1 Blatt 11 Aufg. 1 2004-01-13 11:55
MrSandman666
Hatte anfangs auch nicht gedacht, dass die Sache schwer, wird. Ist sie ja eigentlich auch nicht. Eigentlich müsste meine Lösung auch funktionieren, wenn Dr. Scheme nicht so pingelig wäre…

Ah, ok. Hab's jetzt hingekriegt. Lag daran, dass Dr. Scheme keine überflüssigen klammern mag.

also nicht:
if (= x y) ( (myfunc 1 2) ) ( (myotherfunc 3 4) )
sondern:
if (= x y) ( myfunc 1 2 ) ( myotherfunc 3 4 )
argh! Warum gibt es bloß keinen vernünftigen Scheme interpreter mit ner Vernünftigen GUI? Bei Dr. Scheme funktioniert unter Linux ja nicht mal Copy & Paste anständig!

Re: P1 Blatt 11 Aufg. 1 2004-01-13 17:12
low_level
Ah, ok. Hab's jetzt hingekriegt. Lag daran, dass Dr. Scheme keine überflüssigen klammern mag.

Das liegt nicht an DrScheme, sondern an der Sprache Scheme selbst. Eine Klammer bedeutet "diesen Ausdruck auswerten".

+ => #<primitive procedure +>
(+) => 0
((+)) => ABORT (Versuch, das Ergebnis von (+), also 0, aufzurufen)

Re: P1 Blatt 11 Aufg. 1 2004-01-13 17:40
tekai
argh! Warum gibt es bloß keinen vernünftigen Scheme interpreter mit ner Vernünftigen GUI? Bei Dr. Scheme funktioniert unter Linux ja nicht mal Copy & Paste anständig!

Tja, wenn man nur wüsste wie. Versuchs entweder mit einem mittlerem Mausklick oder Ctrl-y.