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
