Skip to content

Aufgabe Flussüberquerung: Was sollen die Argumente von other-shore-offset sein? #24

Description

@das-g

In Aufgabe 1.11, Teilaufgabe 2, heisst es

Schreibe dann eine Funktion other-shore-offset, die die Länge der Strecke berechnet, die das Boot abgetrieben wird (also den Versatz am anderen Ufer, im Schaubild die Strecke b).

\item Schreibe dann eine Funktion \texttt{other-shore-offset},
die die Länge der Strecke berechnet, die das Boot abgetrieben wird
(also den Versatz am anderen Ufer, im Schaubild die Strecke $b$).

Für mich scheint klar, dass die Funktion mit der schon in Teilaufgabe 1 implementierten Funktion crossing-time zusammenspielen sollte. Allerdings bieten sich mit der Formel

b = vFluss ˙ t

(Das Boot wird gleich weit abgetrieben, wie der Fluss während der Überfahrtzeit fliesst.)

zweierlei Lösungsansätze an:

  1. b(vFluss, t) = vFluss ˙ t

    , also eine Funktion, der man das Ergebnis t von crossing-time übergeben würde.

  2. b(a, vFluss, vBoot) = vFluss ˙ t(a, vBoot)

    , also eine Funktion, die die in der Aufgabenstellung als gegeben angegebenen Werte entgegen nimmt, und in ihrem Rumpf selbst crossing-time aufruft, um t zu ermitteln.

Ein Kommentar im Quelltext deutet einen dritten Ansatz an:

% Dazu musst Du die Breite des Flusses $a$ mit dem Verhältnis von
% $v_{\text{Fluss}}$ zu $v_{\text{Boot}}$ multiplizieren.

Daraus ergibt sich

b(a, vFluss, vBoot) = a ˙ (vFluss / vBoot)

was wegen

b
= vFluss ˙ t
= vFluss ˙ (a / vBoot)
= (vFluss ˙ a) / vBoot
= (a ˙ vFluss) / vBoot
= a ˙ (vFluss / vBoot)

natürlich ebenfalls stimmt, meiner Meinung nach aber deutlich weniger offensichtlich ist. (Aber vielleicht gehe ich das Problem zu physisch anstatt geometrisch an. Aus dem Schaubild und den Ähnlichkeits-Gesetzten von Dreiecken ergibt sich natürlich auch, a : vBoot = b : vFluss bzw. a : b = vBoot : vFluss, was nach b aufgelöst ebenfalls zur expliziten Formel b = a ˙ vFluss / vBoot führt.)

Wählt man allerdings diesen dritten Ansatz für other-shore-offset, so würde die Funktion crossing-time aus Teilaufgabe 1 zwecklos, da sie für das Ermitteln des Endergebnisses gar nicht gebraucht würde.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions