FB18 - Das Forum für Informatik

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

T3 WiSe 04 Blatt 2

T3 WiSe 04 Blatt 2 2004-10-31 19:25
Fred
In meinen Übungsgruppen bin ich heute gar nicht mehr richtig zur Vorbesprechung des zweiten Aufgabenblattes gekommen, daher an dieser Stelle noch einmal ein paar Anmerkungen:

Zur Aufgabenstellung: es soll eine Prozedur geschrieben werden, die ein Polynom dritten Grades auswertet.

a*x^3 + b*x^2 + c*x + d

Ob {a, b, c, d} dabei als globale Konstanten festgelegt oder der Prozedur in irgeneiner Form als Parameter übergeben werden ist hier eher nebensächlich.

Die einfachste (dafür aber statische) Lösung der Aufgabe ist eine Prozedur, welche lediglich aus einer einzigen return-Anweisung besteht.


Schön fände ich es, wenn Ihr Euch darüber Gedanken machen würdet, wie man

a) Rechenzeit sparen kann, indem man unnötiges wiederholtes Multiplizieren wegoptimiert (Horner Schema)

b) die Aufgabenstellung möglichst allgemein lösen kann (ein Polynom n-ten Grades mit n Parametern (a0, a1, a2, … an)


Wobei Teil b) "Kür" ist (wie Wolfinger sagen würde). Für die Programmier-Freaks unter Euch, die die Aufgabe sonst in 2 Minuten gelöst haben, sicherlich nicht uninteressant. Ausserdem gibt's dann auch schön was zum Präsentieren.

Re: T3 WiSe 04 Blatt 2 2004-10-31 19:38
UncleOwen
a*x^3 + b*x^2 + c*x^3 + d

Ich vermute mal stark, da ist ein ^3 zu viel?

Re: T3 WiSe 04 Blatt 2 2004-10-31 19:39
korelstar
a*x^3 + b*x^2 + c*x^3 + d
Du hast da ein ^3 zu viel. [img]http://www.fb18.de/gfx/25.gif[/img] (Edit: okay, zu langsam, den hatten wir schon)

Was heißt "Testen Sie dieses Unterprogramm hinreichend mittels eines Hauptprogramms"? Einfach ein paar Mal mit verschiedenen Werten für x aufrufen?

Was sind "Anschlusskonventionen"?

Re: T3 WiSe 04 Blatt 2 2004-10-31 20:20
georg
Was sind "Anschlusskonventionen"?

Ich glaube mich aus der Übungsgruppe zu erinnern, dass
das die Konventionen sind, nach denen man sich in Assembler richtet, wenn man eine C-Funktion aufruft. Dass also z.B. die Parameter der Reihe nach in %o0,%o1,… (bzw. %i0,%i1,… auf der anderen Seite) stehen, ist eine solche. Im Prinzip könnte man ja Unterprogramme in Assembler auch anders realisieren. Wenn man aber mit dem C-Compiler zusammenarbeiten will, muss man sich an dessen Konventionen halten.

Re: T3 WiSe 04 Blatt 2 2004-10-31 20:46
korelstar
Achso. Danke. So kann ich mir darunter etwas vorstellen.