Es soll die Geschwindigkeit bestimmt werden, mit der ein Körper auftrifft, wenn er aus einer bestimmten Höhe nach unten fällt.
Dazu müssen nur die Anfangswerte geändert werden:
Das s-t- und v-t-Diagramm ist im Bild zu sehen.
Aber: Mit der vorgegebenen Zeit von 20 s (in der for-Schleife) fällt unser Körper in negative Höhen, also weit unter den Aufschlagpunkt.
Das Diagramm ist praktisch sinnlos.
Es hätte bei 0 m aufhören sollen.
Man könnte nun die Fallzeit für die Höhe von 10 m ausrechnen und die Schleifenparameter entsprechend ändern. Aber es soll nicht gerechnet werden!
Die Lösung ist eine if-Anweisung. Vor den rechenblock in der for-Schleife wird mit
if (s>0)
festgelegt, dass die Rechnung und der Eintrag in das Array nur dann erfolgen soll, wenn s noch größer als 0 ist.
Falls s kleiner als 0 ist, der Fall also unterirdisch weitergehen müsste, wird nicht mehr gerechnet.
Das Diagramm sieht dann sinnvoll aus.
Aber: Das s-t-Diagramm endet immer noch unterhalb von 0. Das hängt damit zusammen, dass vor der letzten Rechnung s noch größer als 0 war, aber nach der Rechnung kleiner als 0 ist. Ursache ist das zu große dt.
Aufgabe: Ändere das dt so, dass die Kurve ungefährt auf 0 endet.
Aufgabe: Regentropfen fallen aus einer Höhe von 800 m. Mit welcher Geschwindigkeit kommen sie im freien Fall unten an?
Das v-t-Diagramm sagt, dass sie mit etwas über 120 m s-1 oder 432 km h-1 aufschlagen würden.
Das ist Unsinn, denn jeder Regentropfen würde uns tödlich treffen