LU09.A07 - Bremsweg
Berechnen Sie die Anhaltestrecke eines Autos bei gegebener Geschwindigkeit [km/h]
für trockene bzw. nasse Straße.
Benötigte Informationen
- Die Geschwindigkeit
[km/h]
kann vom Benutzer eingegeben werden. - Geschwindigkeit
[m/s]
= Geschwindigkeit[km/h]
/ 3.6 - Bremsbeschleunigung auf trockener Straße = 7
[m/s^2]
, auf nasser Straße = 4[m/s^2]
. Wer das Programm benutzt, kann dabei «t» für die trockene bzw. «n» für die nasse Straße eingeben. - Reaktionszeit = 1.44
[s]
. - Reaktionsweg
[m]
= Geschwindigkeit[m/s]
* Reaktionszeit. - Bremsweg
[m]
= Geschwindigkeit^2[(m/s)^2]
/ (2 * Bremsbeschleunigung[m/s^2]
). - Anhaltestrecke
[m]
= Reaktionsweg + Bremsweg.
Zusatzaufgabe Sicherheitsabstand
Berechnen Sie den notwendigen Sicherheitsabstand (in Metern und in Sekunden), um einen Auffahrunfall zu vermeiden, falls der vorausfahrende Wagen eine Vollbremsung einleitet.
- Bremszeit
[s]
= Geschwindigkeit[m/s]
/ Bremsbeschleunigung[m/s^2]
.
Vorlage
- main.py
def in_meters_per_second(speed_kmh): # Konvertiert Geschwindigkeit von km/h zu m/s pass def reaction_distance(speed_mps): # Berechnet den Reaktionsweg pass def braking_distance(speed_mps, dry_road=True): # Berechnet den Bremsweg pass def stopping_distance(speed_kmh, dry_road=True): # Berechnet die Anhaltestrecke pass def safety_distance_meter(speed_kmh, dry_road=True): # Berechnet den Sicherheitsabstand in Metern pass def safety_distance_seconds(speed_kmh, dry_road=True): # Berechnet den Sicherheitsabstand in Metern pass def main(): # TODO: Berechne die Anhaltestrecke und den Sicherheitsabstand für 50, 80 und 120 km/h # TODO: Ruf die Funktionen auf und gib das Ergebnis aus ... if __name__ == '__main__': main()
Beispiele
# Beispiel für die Berechnung der Anhaltestrecke bei 80 km/h auf trockener Straße print(stopping_distance(80))
Vorgehen
- Akzeptieren Sie das GitHub Classroom Assignment im Moodlekurs.
- Klone Sie das Repository in Ihre Entwicklungsumgebung.
- Implementieren Sie die notwendigen Funktionen zur Berechnung der Anhaltestrecke.
- Testen Sie jede Funktion mit verschiedenen Geschwindigkeiten und Straßenbedingungen.
- überprüfen Sie alles mit den Unittests.
- Rufen Sie die Funktionen in der
main
-Methode auf und geben Sie die Ergebnisse aus.
Abgabe
Die Abgabe erfolgt durch den Push in das GitHub-Repository. In Moodle ist keine Abgabe vorgesehen oder möglich.
⇒ GitHub Repo für externe Besucher
GitHub Repository https://github.com/templates-python/m319-lu09-a07-breaking
Lernende am BZZ müssen den Link zum GitHub Classroom Assignment verwenden