Doubles are giving me problems


Posted on 16th Feb 2014 07:03 pm by admin

Ok so, first of all i made a double = 0.05, but when running the debugger it shows up as 0.04999. I know this has something to do with how doubles store but its causing problems for me. Anyway, in the code I'm trying to get only the right hand side(rhs) of the double variable jdn's decimal point. So in the code example I'm only trying to get .05. But rhs isn't always going to be the same and can have up to 0.00005 <- that fifth one there(can't remember what its called - hundred thousandth?). I have constant numbers right now for the sake of testing this. Now the counter goes through starting at 0.1, to make sure everything after the decimal point is 0. It goes through fine until it gets to 0.0002 - 0.0001 and then rhs = 9.99998e-005.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include #include #include using namespace std; int main() { double jdn = 2454115.05; double lhs = floor(jdn); double rhs = jdn - lhs; double counter = 0.1; if( rhs != 0.0 ) while( (rhs != 0.000001) || (counter != 0.00001) ) { if( (rhs - counter) <= 0 ) { counter *= 0.1; //cout << "rhs = " << rhs << endl; } else { rhs -= counter; cout << "rhs = " << rhs << endl; } } cout << "ok" << endl; return 0; }
Results:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
rhs = 0.04 rhs = 0.03 rhs = 0.02 rhs = 0.01 rhs = 0.009 rhs = 0.008 rhs = 0.007 rhs = 0.006 rhs = 0.005 rhs = 0.004 rhs = 0.003 rhs = 0.002 rhs = 0.001 rhs = 0.0009 rhs = 0.0008 rhs = 0.0007 rhs = 0.0006 rhs = 0.0005 rhs = 0.0004 rhs = 0.0003 rhs = 0.0002 rhs = 9.99998e-005

No comments posted yet

Your Answer:

Login to answer
120 Like 6 Dislike
Previous forums Next forums
Other forums

mysql select query problem
how can i select multiple fields from multiple table in one query like

i have table name t1 a

Unifying logins of two different scripts
I have two different game scripts which I want to embed on my own site. The problem is I don't want

Echo-ing MySQL content and Keep Formatting?
I have data in my MySQL such as:

QuoteBlah blah

Blah blah

etc
but when i ech

wav to mp3 + goDaddy
I need to convert wav files to mp3s. From what I have found so far one way to do it is to have my PH

Formatting echo from database
So I have a database that stores First and last names, then echos them back to a website, as of now

Facebook status update API
Hello,

So, I'm trying to create my first Facebook application with PHP.

Basic ideas fo

Confusing Functions
So, I've been reading up on Functions and I like them! However, I need some help using variables in

insert mysql embeded videos as blobs?
Using TinyMCE my client will be able to embed images and flash videos into large columns of text whi

need help in dynamic select menu in php
hi i have created a dynamic select menu using php. i have a problem in that which is when the user s

Error in Configure System Landscape Directory phase
Hi

We are getting the error in Configure SLD phase ( 41 of 44 phase).

Please f

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash