Code:
for (i = 0; i < 10; i++) {
printf("%.15f\n", random()/((double) RAND_MAX));
}
should be
Code:
for (i = 0; i < 10; i++) {
printf("%f\n", ((double)rand() / ((double)(RAND_MAX)+(double)(1)) ));
}
a sample code which gnerated randonm number from [0,1] and [0,1000] floating point numbers
Code:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int i;
double X;
srand(time(0));
for(i=0;i<10;i++)
{
X = ((double)rand() / ((double)(RAND_MAX)+(double)(1)) );
printf("%f \t %f\n",X,X*1000);
}
getchar();
return 0;
}
/*my ouput
0.009277 9.277344
0.624451 624.450684
0.529999 529.998779
0.419037 419.036865
0.858154 858.154297
0.952148 952.148438
0.746246 746.246338
0.705444 705.444336
0.593781 593.780518
0.759460 759.460449
*/
ssharish2005