![]() |
Sqr nicht das selbe ..
Hab ein kleines Programm geschrieben in VB welches ich nach Delphi protiere
Wie kann ich Sqr verwenden damit ich auf das gleiche Ergebnis komme? in VB ist Sqr als Double deklariert. in Delphi als Real(Extended) oder als Integer. Deshalb kommt es zu unterschiedlichen Ergebnissen.
Delphi-Quellcode:
´
Dx := 331;
Dy := 50; LenI := Sqr(Dx * Dx - Dy * Dy); Ergebnis ist -1422844167
Code:
Ergebnis ist 335
Dx = 331
Dy = 50 LenI = Sqr(Dx * Dx + Dy * Dy) Das hat zur folge das mir in Delphi die richtigen Maus positionen nicht übergeben werden und mein vergleich immer ins negative geht. gruss |
AW: Sqr nicht das selbe ..
Weil
1.
Code:
und
VB = SQR = Wurzel
Delphi = SQR = Quadrat 2.
Code:
Wie denn Minus oder Plus, was soll denn gerechnet werden?
LenI := Sqr(Dx * Dx - Dy * Dy);
LenI = Sqr(Dx * Dx + Dy * Dy) Also was in VB so aussieht
Code:
sieht in Delphi so aus
LenI = Sqr(Dx * Dx - Dy * Dy)
Delphi-Quellcode:
LenI := Sqrt(Dx * Dx - Dy * Dy)
|
AW: Sqr nicht das selbe ..
Zitat:
so geht's jetzt
Delphi-Quellcode:
Weil die positionen der Maus übergeben werden und die sind bei TPoint nun mal Longint ;)
Leni := round(Sqrt(Dx * Dx + Dy * Dy));
Zitat:
Thanks |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:53 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