Hi
ich versuche grad eine function zu schreiben die mir ausrechnet wie viel energie ich brauche um mit einem raumschiff von der erde wegzufliegen...
ich habe nen trackbar mit dem ich die höhe einstelle, diese höhe wird dann in abschnitte unterteilt und ausgerechnet wie viel energie benötigt wird um diese höhe zu überwinden
pos = die höhe insgesammt
z = anzahl der abschnitte
mPlanet, mSchiff = masse des planeten / des schiffes
Delphi-Quellcode:
function Energieberechnung(Pos, Z, mPlanet, mSchiff: Cardinal): Extended;
var h: Extended;
I: Cardinal;
x: Extended;
begin
h := Pos/Z; // die höhe für jeden abschnitt
result := 0;
for i := 1 to Z do
begin
x := y * // y = constante = 6,67 * 10^(-11)
(
(mPlanet*mSchiff) / (
(r+(i*h-h)) * (r+(i*h)) // r = radius erde = 6378137
)
) *
h;
Result := Result + x;
end;
end;
mein lehrer hat mir folgende formel gegeben:
Zitat:
w = y * ((m * M)/(r0*r1)) * (r1-r0)
das problem: das ergebnis ist immer sehr klein (0.000000000234412 oder so)
ich denke das liegt daran das delphi mit so hohen zahlen nicht zurechtkommt
was meint ihr?