Click here to Skip to main content
15,908,445 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralGraphics blend modes Pin
Vikash Dubey17-Nov-04 6:37
Vikash Dubey17-Nov-04 6:37 
GeneralRe: Graphics blend modes Pin
Jerry Evans17-Nov-04 7:39
Jerry Evans17-Nov-04 7:39 
GeneralRe: Graphics blend modes Pin
Vikash Dubey17-Nov-04 8:24
Vikash Dubey17-Nov-04 8:24 
GeneralOLD TAPI CONTROL Pin
John R. Shaw17-Nov-04 6:34
John R. Shaw17-Nov-04 6:34 
Generaldouble dValue = 10.52 - 10.0; Pin
Erick 'El Matador' Demers17-Nov-04 6:07
Erick 'El Matador' Demers17-Nov-04 6:07 
GeneralRe: double dValue = 10.52 - 10.0; Pin
Maximilien17-Nov-04 6:20
Maximilien17-Nov-04 6:20 
GeneralRe: double dValue = 10.52 - 10.0; Pin
Chris Meech17-Nov-04 6:25
Chris Meech17-Nov-04 6:25 
GeneralRe: double dValue = 10.52 - 10.0; Pin
Phil J Pearson17-Nov-04 6:27
Phil J Pearson17-Nov-04 6:27 
It's inevitable. It is impossible to represent some real values exactly in floating-point format.

The best way to handle rounding errors like this is to decide what precision is necessary for your application and round values when necessary. Keep the values 'raw' as long as possible and round before displaying the result.

for example:
double round(double val, int ndp)
  {
  double mult = pow(10, ndp);

  val *= mult;
  return ((val - floor(val) < 0.5) ? floor(val) : ceil(val)) / mult;
  }

...

// dValue will be 0.5200
double dValue = round(10.52 - 10.0, 4);



The opinions expressed in this communication do not necessarily represent those of the author (especially if you find them impolite, discourteous or inflammatory).
GeneralRe: double dValue = 10.52 - 10.0; Pin
Erick 'El Matador' Demers17-Nov-04 6:45
Erick 'El Matador' Demers17-Nov-04 6:45 
GeneralRe: double dValue = 10.52 - 10.0; Pin
tom_dx17-Nov-04 13:35
tom_dx17-Nov-04 13:35 
GeneralRe: double dValue = 10.52 - 10.0; Pin
Michael Dunn17-Nov-04 15:49
sitebuilderMichael Dunn17-Nov-04 15:49 
GeneralControl question Pin
ricardo.padrela17-Nov-04 4:17
ricardo.padrela17-Nov-04 4:17 
GeneralRe: Control question Pin
Phil J Pearson17-Nov-04 4:57
Phil J Pearson17-Nov-04 4:57 
GeneralRe: Control question Pin
ricardo.padrela17-Nov-04 5:42
ricardo.padrela17-Nov-04 5:42 
GeneralRe: Control question Pin
Chris Meech17-Nov-04 6:28
Chris Meech17-Nov-04 6:28 
GeneralRe: Control question Pin
Chris Meech17-Nov-04 6:30
Chris Meech17-Nov-04 6:30 
GeneralRe: Control question Pin
ricardo.padrela17-Nov-04 6:58
ricardo.padrela17-Nov-04 6:58 
GeneralRe: Control question Pin
Chris Meech17-Nov-04 7:29
Chris Meech17-Nov-04 7:29 
GeneralRe: Control question Pin
ricardo.padrela17-Nov-04 7:37
ricardo.padrela17-Nov-04 7:37 
GeneralRe: Control question Pin
Chris Meech17-Nov-04 8:04
Chris Meech17-Nov-04 8:04 
GeneralRe: Control question Pin
Maximilien17-Nov-04 7:00
Maximilien17-Nov-04 7:00 
GeneralRe: Control question Pin
ricardo.padrela17-Nov-04 7:06
ricardo.padrela17-Nov-04 7:06 
GeneralRe: Control question Pin
John R. Shaw17-Nov-04 8:42
John R. Shaw17-Nov-04 8:42 
GeneralRe: Control question Pin
Maximilien17-Nov-04 9:20
Maximilien17-Nov-04 9:20 
GeneralAccused of function pointering Pin
brianwelsch17-Nov-04 4:11
brianwelsch17-Nov-04 4:11 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.