Results 1 to 5 of 5
- 09-06-2010, 07:18 PM #1
Member
- Join Date
- Aug 2010
- Posts
- 8
- Rep Power
- 0
Binary-to-Decimal Conversion (Precision Problem)
This semester I'm taking a class in Number Theory and Intro to Java. As a way to study both I'm trying to make a program that can convert values from one number sytem (ie binary, hexadecimal, octal) to decimal.
One step in this has me needing to convert a double (the number to be converted) to a string. From there I use .charAt(int) to pick each digit and multiply it by the correct power of 2 .
(ie: ABCD = a*2^3 + b*2^2 + c*2^1 + d*2^0)
When I do convert the double to a string, the portion past the floating point is changed slightly. For example, the number I enter to be converted from binary to decimal as 10110.1101 is rounded by the computer in the conversion process to the value 10110.110099 (which obviously doesn't play by the rules of binary lol).
So I'm looking for a way to stop the value from being changed, during the conversion to string process. Or I'd like to find a way around having to convert to a string in the first place?
Any ideas are greatly appreciated.
I've already tried double=Math.floor(double*1000)/1000, and a few other normally clever fixes, but to no success.
Thanks again for your help.Last edited by shadowfax57; 09-06-2010 at 07:18 PM. Reason: misspelling
- 09-06-2010, 08:13 PM #2
- Join Date
- Sep 2008
- Location
- Voorschoten, the Netherlands
- Posts
- 11,408
- Blog Entries
- 7
- Rep Power
- 17
Forget about raising numbers to a power and have a look at the Integer class; it has all the methods you want or need.
kind regards,
Jos
- 09-06-2010, 09:32 PM #3
Is your project to write methods that are available in the Integer class
or is it to do something at a higher lever using the Integer class methods?
Don't use floating point numbers. Do it all in whole numbers.a way to stop the value from being changed
How did that work? Would the decimal value would be: (16+4+2).(1/2+1/4+1/16)converted from binary to decimal as 10110.1101 is rounded by the computer in the conversion process to the value 10110.110099
- 09-07-2010, 03:20 AM #4
Member
- Join Date
- Aug 2010
- Posts
- 8
- Rep Power
- 0
Well to be honest I was looking to do it w/o any pre-written methods, simply because it would force me to take a longer time with it and get familiarized w/ the language. I will take a look at the Int class though, I'm sure it's definitely important enough and well worth the look.
Thanks
- 09-07-2010, 09:00 AM #5
Moderator
- Join Date
- Apr 2009
- Posts
- 10,481
- Rep Power
- 16
Similar Threads
-
Convert Decimal To Binary
By aspire007 in forum New To JavaReplies: 8Last Post: 08-06-2010, 07:32 AM -
Binary to Decimal Converter
By c_walker in forum New To JavaReplies: 15Last Post: 11-24-2009, 02:38 PM -
Convert binary into decimal
By WarmRegards in forum New To JavaReplies: 8Last Post: 10-18-2009, 02:32 PM -
Eclipse- Decimal to binary
By queen_vee in forum New To JavaReplies: 1Last Post: 02-24-2009, 02:17 PM -
How do I convert a decimal value to hexadecimal with double precision (64 bit)
By SKaur in forum New To JavaReplies: 7Last Post: 01-12-2008, 09:02 PM


LinkBack URL
About LinkBacks
Reply With Quote
Bookmarks