![]() |
Die Masse der Erde in delphie eingeben
Hi Will ein Programm scchreiben für Planetenbewegung, allerdings hab ich das Problem, das delphi die masser der erde zu groß ist, und mit 10ner potenzen kann man imo in delphie nicht arbeiten
Jemand eine idee ? Vielen Dank |
Re: Die Masse der Erde in delphie eingeben
Zitat:
|
Re: Die Masse der Erde in delphie eingeben
Zitat:
|
Re: Die Masse der Erde in delphie eingeben
|
Re: Die Masse der Erde in delphie eingeben
Zitat:
10er-Potenzen nutzen vielleicht solche Eigenbauten wie der (dadurch natürlich schnarchlahme) .Net-Decimal-Typ, aber die anderen Floattypen nutzen die Basis 2. @omata: Auswendig kenne ich den Wert nicht, aber auswendig weiß ich, dass er sogar in Milligramm in einen Real48 passen würde. |
Re: Die Masse der Erde in delphie eingeben
Zitat:
Zitat:
|
Re: Die Masse der Erde in delphie eingeben
Und? Habt ihr da mal eine 1 mit 24 Nullen reingeschrieben?
|
Re: Die Masse der Erde in delphie eingeben
Zitat:
|
Re: Die Masse der Erde in delphie eingeben
Zitat:
edit @Dax: hä :stupid: |
Re: Die Masse der Erde in delphie eingeben
Aber die interne Speicherung ist komplett anders.
Ein Extended besitzt 64 Bit Mantisse und 15 Bit Exponent. Das bedeutet ein Extended kann ungefähr einen Zahlenbereich darstellen von: -2^(2^14) bis 2^(2^14), also -1,19e4932 bis 1,19e4932 Und das ist verdammt viel. Die Masse der Erde passt da locker rein, da würde sogar die Anzahl der Atome der Erde locker reinpassen. (Wenn ich mich nicht verrechnet hab) EDIT: Roter Kasten... grml... |
Re: Die Masse der Erde in delphie eingeben
Ok, so gehts...
Delphi-Quellcode:
Gruss
uses Math;
var m:extended; begin m:=5.9736 * power(10, 24); end; Thorsten |
Re: Die Masse der Erde in delphie eingeben
Falls die Unit Math mal kaputt sein sollte:
Delphi-Quellcode:
Gruß Hawkeye
m := 5.9736E24;
|
Re: Die Masse der Erde in delphie eingeben
Zitat:
Wenn man sich das mal ankuckt, dann sieht man, das man für "Allerweltsanwendungen" (also Dinge, die entfernt was mit der Realität zu tun haben), wohl niemals auch nur den Double-Raum sprengen wird.. Geschweige denn Extended. Und wenn doch: negaH hatte da doch was.. *g* Wikipedia Anzahl Teilchen* 4·10^78 bis 6·10^79 Anzahl Photonen* 10^88 * bezogen auf das beobachtbare Hubble-Volumen. |
Re: Die Masse der Erde in delphie eingeben
Vorsicht vor den Details! Extended kann zwar riesig große Zahlen darstellen, aber trotzdem maximal 2^80 Werte genau. Das heisst, dass lediglich ein verschwindend geringer Prozentsatz exakt darstellbar ist. Zu beachten auch: Signifikante Stellen bei Extended: 19-20. Eine 10^24 ist aber 25-stellig, und würde daher bestenfalls als Näherung darstellbar sein. Bei noch größeren Werten, dürften die darstellbaren Werte steigenden Abstand voneinander haben, womit die Wahrscheinlichkeit wächst, eine nicht wirklich gute Näherung zu bekommen.
Der Zahlenbereich von Extended schaut zwar irre toll aus, aber lasst euch um Gottes Willen nicht immer alle davon irre führen! Mehr als 2^[bits] Werte gehen NIE, egal wie sich der Typ zusammensetzt. Bei Floats leidet halt die Genauigkeit unter der Range. Je nach Einsatzzweck können diese Näherungen sicherlich reichen, aber für den vorliegenden Fall würde ich einfach die Einheit in der ich rechne ändern. Was spricht dagegen in z.B. Megatonnen statt in Kilogramm zu rechnen? (Den entsprechenden Faktor muss man nur konsequent auf alle anderen Maßeinheiten durchziehen, und du wirst keinen Unterschied im Ergebnis bemerken.) Zudem bietet sich die Angabe von 5,9736*10^24, also 5973600000000000000000000 doch prima an um die Einheiten zu kürzen. Siehst du WIE viele Nullen da unnötig sind, und nichts zur Genauigkeit beitragen? Wenn man die Zahl so in einen Extended quetscht, würde die Genauigkeit deswegen leiden, da ja binär gespeichert wird. Und der o.g. Wert ist Binär mit großer Wahrscheinlichkeit keine Zahl mit einer langen 0-Kette am Ende ;) (Bzw. würde sich keine Mantisse mit einer so langen 0-Kette ergeben vermute ich mal.) \\Edith: Schlechtschreibung... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz