Die Programme werden handlicher und übersichtlicher, wenn die einzelnen Fahrfunktionen auch als Funktion im Programm umgesetzt werden. Implementiere die unten abgebildeten Funktionen.



def vorwaerts_fahren(geschwindigkeit): # geschwindigkeit von 0 bis 1023
pass
def rueckwaerts_fahren(geschwindigkeit): # geschwindigkeit von 0 bis 1023
pass
def stoppen():
pass
def lenke_rechts_um_90_grad():
pass
def lenke_links_um_90_grad():
pass
def fahre(geschwindigkeitLinks, geschwindigkeitRechts): # geschwindigkeit jeweils von 0 bis 1023
pass
Wie verlässlich und genau ist das Fahrverhalten des Roboters? Und lässt sich durch eine genaue Analyse eine Funktion erstellen, bei der man dem Roboter sagen kann, wie weit er fahren soll? Darum gehts im Folgenden.
Es wäre praktisch, dem Roboter genau sagen zu können, wie weit er fahren soll und nicht nur, mit welcher Leistung er fahren soll. Genau das ist das Ziel dieser Aufgabe.
Für diese Aufgabe gilt: Der Roboter fährt immer mit der Leistung 50%.
fahre_cm_mit_50Prozent( strecke ), wobei strecke die Strecke in cm ist, die der Roboter zurücklegen soll.Nun wird es umgedreht: Die Zeit bleibt immer dieselbe, aber der Roboter fährt mit unterschiedlicher Leistung. Ziel ist, auch den Zusammenhang von zurückgelegter Strecke und Leistung genau zu erfassen.
Für diese Aufgabe gilt: Der Roboter fährt immer für 5 Sekunden.
fahre_cm_in_5Sek( strecke ), wobei strecke die Strecke in cm ist, die der Roboter zurücklegen soll.Nach den vorherigen zwei Vorbereitungen ist nun das Ziel, beide Untersuchungen zusammen zu fassen und eine Funktion zu implementieren, bei der man gleichzeitig angeben kann, wie weit der Roboter fahren soll und mit welcher Leistung der die Strecke fahren soll.
Für die Zusammenfassung der beiden Untersuchungen wird folgende Voraussetzung genutzt: Wenn die Größe A proportional zur Größe B und proportional zur Größe C ist, dann ist sie auch proportional zum Produkt \(B \cdot C\).
Wenn \(A \propto B\) und \(A \propto C\) gilt, dann gilt auch \(A \propto B \cdot C\).
Anders formuliert:
Wenn \(\frac{A}{B} = konst.\) und \(\frac{A}{C} = konst.\) gilt, dann gilt auch \(\frac{A}{B \cdot C} = konst.\)
Nach den vorherigen Untersuchungen wissen wir: Die Strecke ist proportional zur Zeit ( \(s \propto t\)).
Aber sie ist nicht proportional zur Leistung. Ein linearer Zusammenhang lässt sich aber wie im folgenden Beispiel umformen:
\(s(l) = 0,5 \cdot l - 5 = 0,5 \cdot (l - \frac{5}{0,5}) = 0,5 \cdot ( l - 10)\).
In diesem Beispiel wäre die Strecke \(s\) also proportional zur Größe \((l-10)\): \(s \propto (l-10)\).
fahre_cm_mit_Leistung( strecke, leistung), wobei strecke die Strecke in cm ist, die der Roboter fahren soll, und leistung die Leistung in Prozent ist, mit der der Roboter fahren soll (d.h. für 20% wird 20 eingegeben). Tipp: Denke daran, dass die Zeit, die mit der Formel aus Aufgabenteil 4 berechnet wird, die Zeit in Sekunden ist und im Block pausiere ... die Zeit in Millisekunden benötigt wird.