Forum: Compiler & IDEs km/h in m/s berechnen und wider zurück


von Peter,K. (Gast)


Lesenswert?

hallo

ich will km/in m/s umrechnen

z.b

1km/h sind 0,277777 m/s

wie kann ich dies am besten mit den avr rechnen ohne kommaberechnung.

habe gedacht 1km/h * 100 /36 =2,77 also 2 als int.


nun m/s in km/h  2*36/100 =0,7 also 0 als int.

so gehts warscheinlich nicht.

wie kann man das am besten lösen???

von crest (Gast)


Lesenswert?

Entscheide dich für den Wertebereich und verwende Fixpoint Berechnungen 
mit der nötigen Genauigkeit.

von Ich (Gast)


Lesenswert?

Wenn du versprichst, deine Rechtschreibung in Zukunft zu ändern, kriegst 
du den Umrechnungsfaktor.
Bis dahin nur ein Tipp: Versuch immer, den Anfangswert zuerst in m/h 
umzurechnen.

von mr. mo (Gast)


Lesenswert?

ich behaupte einfach mal 3,6.

von Jasch (Gast)


Lesenswert?

Peter,K. schrieb:
> hallo
>
> ich will km/h in m/s umrechnen
>
> z.b
>
> 1km/h sind 0,277777 m/s
>
> wie kann ich dies am besten mit den avr rechnen ohne kommaberechnung.
>
> habe gedacht 1km/h * 100 /36 =2,77 also 2 als int.

Zu kleiner Skalierungsfaktor, da hast Du ja schon 33% Fehler drin. 
Größer denken... ;-)

Oder (1km/h * 100 + 18)/36 = 3,28 also 3 als int.

> nun m/s in km/h  2*36/100 =0,7 also 0 als int.
>
> so gehts warscheinlich nicht.

Skalier das ganze passend. Rechne es z.B. in Millimetern (und in long).

1000000 mm/h / 3600 = 277 mm/sec, der Fehler ist unter 0.5%, nicht dass 
es helfen würde.

Weil:

(277 mm/sec * 3600) / 1000000 = 0 km/h (integer)

Und:

(278 mm/sec * 3600) / 1000000 = 1 km/h (integer)

Du kannst nicht erwarten dass Du das beliebig hin- und herkonvertieren 
kannst (auch bei float und double übrigens nicht). Jedenfalls nicht für 
die kleinsten Werte, der Fehler nimmt für höhere Geschwindigkeiten ab.

Passend runden könnte helfen, z.B. 2,77 oben sollte ganz klar 3 ergeben, 
aber das gleitet dann schnell in die höhere Numerik ab.

von Falk B. (falk)


Lesenswert?


von Thomas (Gast)


Lesenswert?

m/s mal 18 geteilt durch 5 gibt km/h.
Ohne Fließkomma und so.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.