範囲から乱数を生成する非常に基本的な乱数関数があります。
すなわち:
// The random is seeded earlier on in the applicationDidFinishLaunching() function
-(NSUInteger)makeRandomNumber:(NSUInteger)minNumber to:(NSUInteger)maxNumber
{
//NSUInteger i = (NSUInteger)( (random() / (double)RAND_MAX) * y);
NSUInteger i = (arc4random() % (maxNumber - minNumber)) + minNumber;
return i;
}
この関数にオプションのモジュラス演算を追加して、何かのモジュラスである数値のみを返すようにします。
ランダムな人々の賃金を生成するためにこれを行いたいと思っています.5または0で丸めた賃金の方がはるかに読みやすいことがわかりました.
オプションのパラメーターを作成する方法や、オプションのモジュラス値が見つかるまでランダム化を強制的にループさせる方法がわかりません。
もう 1 つの問題は、検出するモジュラスがない場合、ループが永遠に続く場合があることです。
すなわち;
0 から 100 の間でランダム化し、モジュラス 5 の値を返します。
編集:これは、最小値または最大値に関係なく、任意の範囲で機能するはずです。上記の数値はほんの一例です。