Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Flugformel aus Excel nach Delphi konvertieren (https://www.delphipraxis.net/172585-flugformel-aus-excel-nach-delphi-konvertieren.html)

lbccaleb 12. Jan 2013 13:12

Flugformel aus Excel nach Delphi konvertieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe eine Flugformel in Excel die mir die korrekte Flugzeit berechnet.
Ich möchte nun diese Formel in Delphi nutzen können. Allerdings habe ich bisher keinen Erfolg mit einem richtigen Ergebniss gehabt.

Ich habe die Formel in Delphi 1 zu 1 übertragen -> kein korrektes Ergebnis
Ich habe die Formel versucht Schritt für Schritt durchzurechnen -> auch kein korrektes Ergbnis.


Also meine Frage ist nun, sind einige Mathegenies unter euch, die mir da behilflich sein könnten, die korrekte Flugzeit in Delphi zu berechnen?


Ich habe ein Screenshot angehangen, welche die Formel in Excel zeigt und wo Excel das korrekte Ergebnis ausrechnet.


Ich habe ein paar variablen fest eingetragen, die normaler weise aus einer Tabelle gelesen werden.
Die Daten sind:

16 (das ist die Entfernung)
14000 ist die Grund-Geschwindigkeit des Schiffs
und die vorletzte 100 ist die Fluggeschwindigkeit in % (Man kann wählen zwischen 10, 20, 30...90, 100%)

Ich bin für jede Hilfe dankbar ;)

Edit:
Das korrekte Ergebniss ist in H23 (00:48:38, also 48Minuten und 38 Sekunden Flugzeit)

Bummi 12. Jan 2013 13:23

AW: Flugformel aus Excel nach Delphi konvertieren
 
Ich kann zwar den Sinn nicht erkennen, aber
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
 d:Double;
begin
  d :=((( ((((16*0.02/5+1)*60)*640000)/(14000*100/100))*(1/1))/3600/24)/100*100);
  Caption := TimeToStr(d);
end;

lbccaleb 12. Jan 2013 13:35

AW: Flugformel aus Excel nach Delphi konvertieren
 
Vielen Dank Bummi.

Jetzt weiß ich auch meinen Fehler :(

Ich habe nicht die Formel falsch eingegeben, ich habe TimeToStr nicht benutzt sondern eine eigene Funktion mit der ich sonnst die anderen Flugformeln in einen String konvertiert hab. Aber die Funktioniert hier nicht, wieso auch immer.




Gibt es eine Möglichkeit die Formel noch zu verbessern?
Zum Bsp. ist 1/1 doch blödsinn oder?

DeddyH 12. Jan 2013 13:38

AW: Flugformel aus Excel nach Delphi konvertieren
 
Bei
Delphi-Quellcode:
d := (16*0.02/5+1)*60*640000/14000/3600/24;
komme ich auch auf das Ergebnis, aber mit einer kürzeren Formel. Wozu die ganzen Klammern und Mutliplikation mit anschließender Division durch den Multiplikator gut sein sollen, entzieht sich meiner Kenntnis (Rundungsungenauigkeiten evtl.?).

[edit]Mittlerweile bin ich bei
d := (16/250+1)/31.5;
angelangt. [/edit]

lbccaleb 12. Jan 2013 13:49

AW: Flugformel aus Excel nach Delphi konvertieren
 
Naja das Problem ist, das die Flugformel von dem Spiel nicht dokumentiert ist, allerdings auch nicht verboten zu benutzen.
Also hat sich die mit der Zeit in der Comunity entwickelt, Sie funktioniert aber ist wohl noch nicht genau so wie sie eigentlich sein sollte...


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz