I wrote a program in java about floating point but the output obtained is not an accurate one; whereas the same program written in C did produce an accurate result.
Code Snippet:
public class One {
public static void main(String...args){
double i, num=0.0;
for(i=0;i<10;i++)
num=num+0.1;
System.out.println(num);
}
}
output: 0.9999999999999999
The program in C goes like this
#include<stdio.h>
main()
{
double i,num=0.0;
for(i=0;i<10;i++)
num=num+0.1;
printf("%f",num);
}
output:1.00000
What am I doing wrong?