現在、私が提供する 2 つの数値の間でランダムな浮動小数点数を取得しようとする方法がありますが、正しく機能しません。
たとえば、下限の浮動小数点として 4.0 を入力し、上限の浮動小数点として 4.5 を入力すると、0.8 または 1.2 のような結果が得られ、これら 2 つの数値の間にあることもあります。ですから、この方法はダメだと思います。メソッドは次のとおりです。
- (float)randomFloatBetween:(float)num1 andLargerFloat:(float)num2 {
return ((float)arc4random() / ARC4RANDOM_MAX) * num2-num1 + num1;
}
これは ARC4RANDOM_MAX です
#define ARC4RANDOM_MAX 0x100000000
とにかく、何が原因で、どうすれば修正できますか?
ありがとう!