Geschwindigkeitsberechnung mit Variablen/fr: Unterschied zwischen den Versionen

Aus RailRoad&Co.-Wiki
Zur Navigation springenZur Suche springen
Papybricolo (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „:Monsieur Freiwald décrit dans [https://www.freiwald.com/forum/viewtopic.php?p=265289#p265289 Forum] l’utilisation des variables comme suit :“
Papybricolo (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „Le calcul ne fonctionne exactement que si l’on suppose implicitement qu’il est fait usage de l’arithmétique à virgule flottante. Mais cela n’est ni documenté ni garanti.“
Zeile 31: Zeile 31:
:Monsieur Freiwald décrit dans [https://www.freiwald.com/forum/viewtopic.php?p=265289#p265289 Forum] l’utilisation des variables comme suit :
:Monsieur Freiwald décrit dans [https://www.freiwald.com/forum/viewtopic.php?p=265289#p265289 Forum] l’utilisation des variables comme suit :


<div lang="de" dir="ltr" class="mw-content-ltr">
Le calcul ne fonctionne exactement que si l’on suppose implicitement qu’il est fait usage de l’arithmétique à virgule flottante. Mais cela n’est ni documenté ni garanti.
Die Berechnung funktioniert nur dann exakt, wenn man stillschweigend unterstellt, dass mit Gleitkommaarithmetik gearbeitet wird. Das aber ist nirgendwo so dokumentiert oder zugesichert.
</div>


<div lang="de" dir="ltr" class="mw-content-ltr">
<div lang="de" dir="ltr" class="mw-content-ltr">

Version vom 26. Februar 2025, 10:53 Uhr

Verwendung
thumbs


Calcul de la vitesse dans TrainController

Distance de mesure

On assigne l’heure à une variable en deux endroits

  • ''t1=Heure actuelle (temps) au point de mesure 1
  • 't2=Heure actuelle (temps) au point de mesure 2
  • -t-delta=t2-t1' le temps écoulé entre deux points de mesure
Fig : point de mesure 1

On calcule ensuite la vitesse réelle :

  • v=s/t-delta*10000*3,6*Massstab

(delta x Échelle)

En appliquant l’idée ci-dessus, on peut facilement déterminer le temps de trajet entre deux points de mesure, mais pas la vitesse correcte du train.

Arithmétique des nombres entiers dans TrainController 9 et 10

Monsieur Freiwald décrit dans Forum l’utilisation des variables comme suit :

Le calcul ne fonctionne exactement que si l’on suppose implicitement qu’il est fait usage de l’arithmétique à virgule flottante. Mais cela n’est ni documenté ni garanti.

In Zahlvariablen können nur ganze Zahlen gespeichert werden und auch die zugehörige Arithmetik beruht auf Ganzzahlarithmetik.

Wenn immer bei einem Softwareprogramm (nicht nur in TrainController) mit ganzzahligen Werten gerechnet wird, so ist es empfehlenswert, "vorsichtig zu programmieren" und die Formel so aufzubauen, dass Divisionen am Schluss der Berechnung ausgeführt werden, damit Runden oder Abschneiden auf ganzzahlige Werte erst ganz am Ende und nicht schon vorher als Zwischenergebnisse in die Berechnung einfließen.

Gleitkommaarithmetik in künftigen Versionen

Vielleicht werden wir dies in einer zukünftigen Version (Upgrade, nicht Update) auf Gleitkommaarithmetik umstellen. In einem Update der Version 10 geht das nicht mehr, weil es eine inkompatible Änderung wäre. Es ist nämlich nicht auszuschließen, dass andere Anwender die bestehende Ganzzahlarithmetik derzeit ganz bewusst für bestimmte Zwecke ausnutzen.

Weblinks


-- Uslex (Diskussion) 15:48, 13. Jan. 2024 (UTC)
bearbeitet: