that's because C/C++ is alot closer to your hardware than is JAVA. C/C++ is only as good as the hardware you run it on, unless you take extra steps to make sure it's better. For example, you could make a Float data type that has the precision you need. for example, maybe create a class that has two integers: one for the whole number, and the other for the decimal. By doing something like that and overriding all the necessary operators, you can make yourself a much more precise float, at the cost of more processing power and memory.