|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
|
[C/c++]confronto double
per generare una serie di casi di test mi si rende necessario confrontare alcuni valori di ritorno di tipo double con delle costanti.
come mi aspettavo il confronto "normale" fallisce miseramente, esistono modi "standard" per confrontare due double? grazie, ciao!!! |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
|
ssssshhh
corro a nascondermi ![]() CPPUNIT_ASSERT_DOUBLES_EQUAL(expected,current,delta): ciaaaaooo |
![]() |
![]() |
![]() |
#3 | |
Member
Iscritto dal: Jun 2006
Città: Padova
Messaggi: 144
|
Quote:
Per confrontare due double il metodo standard è Codice:
if (abs(a - b) < epsilon) { // fai qualcosa }
__________________
MacBook Pro: 2.4Ghz, RAM 2Gb, HD 200GB, GeForce 8600M GT 256Mb, 15" 1440x900 Opaco, stracontento del mio primo mac ![]() DEAD:Dell 9400, T2500, RAM 1GB 533, HD 100GB 5400, DVD+-RW 8X, GeForce 7900GS 256 , WXGA 1440x900 (LG-Philips), XP MCE, batt. 9 celle Quello che Intel, AMD, MS, HP, e altri ti nascondono (Trusted Computing) |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Per comparare 2 double in genere uso una funzione ("C") di questo tipo:
Codice:
#include <math.h> int CmpDouble (double a, double b) { return fabs (a - b) >= 0.000001 ? a < b ? -1 : +1 : 0; }
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
|
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:21.