私はこの回答でコードを見つけましたHow to generate a random number from within a range完全に動作するコードですが、tisは整数です。誰でもこのコードを変更して、 0と1の間?0から1までの無作為な浮動小数点数の生成方法
#include <stdlib.h> // For random(), RAND_MAX
// Assumes 0 <= max <= RAND_MAX
// Returns in the closed interval [0, max]
long random_at_most(long max) {
unsigned long
// max <= RAND_MAX < ULONG_MAX, so this is okay.
num_bins = (unsigned long) max + 1,
num_rand = (unsigned long) RAND_MAX + 1,
bin_size = num_rand/num_bins,
defect = num_rand % num_bins;
long x;
do {
x = random();
}
// This is carefully written not to overflow
while (num_rand - defect <= (unsigned long)x);
// Truncated division is intentional
return x/bin_size;
}
0-100(整数)からランダム化し、答えを1で割ってみてください。例:return 1 /(randomizeNum) –
どういう意味ですか?浮動小数点を使用するためにこれを書き直しますか?もしそうなら、その試みを投稿してください。そうでなければ、この質問は意味をなさない。 – Lundin
https://stackoverflow.com/a/13409133/2630032 –