AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Double Werte vergleichen

Ein Thema von DieDolly · begonnen am 25. Mai 2019 · letzter Beitrag vom 28. Mai 2019
Antwort Antwort
Rollo62

Registriert seit: 15. Mär 2007
4.238 Beiträge
 
Delphi 12 Athens
 
#1

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 08:16
Ihr Lieben,
die Hinweise auf die Vergleichstoleranz mögen ja ganz nett sein, aber wenn man 1.0 mit 10.0 vergleicht, dann braucht man keine Vergleichstoleranz.
Vielleich zeigt Dolly uns mal etwas Code.
Wer sagt denn das eine Vergleichstoleranz nicht 10.0 oder 100.0 oder 1000.0 sein kann ?
Meiner Meinung nach gibt es immer eine, je nach Aufgabenstellung.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.879 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 08:20
Zitat:
Wer sagt denn das eine Vergleichstoleranz nicht 10.0 oder 100.0 oder 1000.0 sein kann ?
Meiner Meinung nach gibt es immer eine, je nach Aufgabenstellung.
Es geht um Rundungsfehler bei der Prüfung auf Gleichheit (angezeigtes 1.0 muss nicht gleich 1.0 sein).
Markus Kinzler
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.238 Beiträge
 
Delphi 12 Athens
 
#3

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 08:34
   if System.Math.SameValue(1.0, 10.0, 100.0) then ... Wäre das deiner Meinung nach unzulässig ?
Wenn ja, warum.
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 09:03
Mit Blick auf die Ausgangsfrage, die die Nutzung des ">="-Operatus suggeriert, scheint das schlicht ein anderer Ansatz zu sein.
Zudem haben wir - trotz der dürftigen Informationslage - keinen Hinweis darauf, dass entsprechend große Toleranzen hier gewünscht sind.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.879 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 09:08
Zitat:
   if System.Math.SameValue(1.0, 10.0, 100.0) then ... Wäre das deiner Meinung nach unzulässig ? Wenn ja, warum.
Nein. In diesem Beispiel würde auch eine Toleranz von 10 schon zur Gleichheit führen.
Der TE möchte aber nicht auf die Gleichheit zweier Werte Prüfen sondern auf >= und da wäre das Äquivalent mit konfigurierbarer Toleranz ja eher System.Math.CompareValue.

Die Vergleiche feuern bei mir beide nicht (wie ich es auch erwarten würde).
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  a, b: Double;
begin
  a := 1.0;
  b := 10.0;
  if a>=b then Button1.Caption := 'Ups';
  if System.Math.CompareValue(a,b, 10) = 1 then Button1.Caption := 'OOh';

end;
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.311 Beiträge
 
Delphi 12 Athens
 
#6

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 10:49
Alles Spekulation. Ohne einen Schnipsel Beispielcode bringt keine Diskussion etwas.
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 11:52
Hallo,
Zitat:
Ich habe A := 1.0 und B := 10.0.
Das ist doch Code.

Ich denke aber, nicht der richtige ...
Heiko
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#8

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 11:53
Ich kann Entwarnung geben. Ich konnte erst jetzt wieder auf den Code gucken. Ich habe in der Testausgabe dummerweise zwei Variablen vertauscht.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

AW: Double Werte vergleichen

  Alt 27. Mai 2019, 12:17
Hier der passende Smiley für dich:

Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:52 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-2025 by Thomas Breitkreuz