Physikproblem gebrauchen könnte:
Code: Alles auswählen
; v : Geschwindigkeit in m/s
; a : Beschleunigung in m/s²
; t : Zeit in s
; s : Strecke in m
;
; v_2 = v_1 + a * t
; s = a/2 * t² + v * t
; Du willst die Dauer t der Beschleunigung a von Geschwindigkeit v_1 auf v_2 berechnen
; t = (v_2 - v_1) / a
Macro Acc_t_vva(v_1, v_2, a)
((v_2 - v_1) / a)
EndMacro
; Du willst die Dauer t der Beschleunigung a um Strecke s zurückzulegen berechnen
; t = Sqr(2 * s / a)
Macro Acc_t_sa(s, a)
Sqr(2 * s / a)
EndMacro
; Du willst die Geschwindigkeit v nach Beschleunigung a über die Dauer t berechnen
; v = a * t
Macro Acc_v_at(a, t)
(a * t)
EndMacro
; Du willst die Geschwindigkeit v nach Beschleunigung a über die Dauer t und der Anfangsgeschwindigkeit v_0 berechnen
; v = t * a + v_0
Macro Acc_v_v0at(v_0, a, t)
(t * a + v_0)
EndMacro
; Du willst die Geschwindigkeit v nach Beschleunigung a über die Strecke s und der Anfangsgeschwindigkeit v_0 berechnen
; v = Sqr(2 * a * s) + v_0
Macro Acc_v_v0as(v_0, a, s)
(Sqr(2 * a * s) + v_0)
EndMacro
; Du willst die Strecke s nach Beschleunigung a über die Dauer t und der Startgeschwindigkeit v berechnen
; s = a/2 * t² + v * t
Macro Acc_s_tav(t, a, v)
(a * t * t / 2 + v * t)
EndMacro
; Du willst die Beschleunigung a berechnen, mit der man auf der Strecke s beschleunigung muss um von v_1 zu v_2 zu kommen
; a = (v_2 - v_1)² / (2 * s)
Macro Acc_a_vvs(v_1, v_2, s)
((v_2 - v_1) * (v_2 - v_1) / (2 * s)) * (1 - (0 Or v_2 < v_1) * 2)
EndMacro
; Du willst die Beschleunigung a berechnen, mit der man in der Dauer t von v_1 auf v_2 beschleunigen kann
; a = (v_2 - v_1) / t
Macro Acc_a_vvt(v_1, v_2, t)
((v_2 - v_1) / t)
EndMacro
; kleines Beispiel:
;
; Fritz fährt 100 m/s mit seinem Auto.
; Wie stark muss Fritz verzögern, damit er genau
; nach 400 m noch eine Endgeschwindigkeit von 1 m/s hat?
Debug "Fritz muss mit " + Str(Acc_a_vvs(100, 1, 400)) + " m/s verzögern"
; ...noch ein kleines Beispiel:
;
; Fritz weiß nicht mit welcher Geschwindigkeit er fährt.
; Wenn Fritz in 2 Sekunden mit -9.5 m/s² verzögert, dann
; hat er eine Endgeschwindigkeit von 4 m/s. Wie schnell ist
; er gefahren?
Debug "Fritz fuhr " + Str(Acc_v_v0at(4, 9.5, 2)) + " m/s"
; ...und noch eins:
;
; Fritz weiß nicht mit welcher Geschwindigkeit er fährt.
; Wenn Fritz auf 100 Meter mit -5.5 m/s² verzögert, dann
; hat er eine Endgeschwindigkeit von 10 m/s. Wie schnell ist
; er gefahren?
Debug "Fritz fuhr " + Str(Acc_v_v0as(10, 5.5, 100)) + " m/s"
gebräuchlisten.
Für Fehlermeldungen wäre ich dankbar. Es kann nämlich gut sein, dass ich
da irgendwo was falsch gemacht habe.

PS.: Braucht jemand ein Sgn()-Macro?
Code: Alles auswählen
Macro Sgn(Value)
(1 - (0 Or Value <= 0) - (0 Or Value < 0))
EndMacro
Debug Sgn(10)
Debug Sgn(0)
Debug Sgn(-10)