3

C4 Alpha API を使用して乱数を生成するにはどうすればよいですか?

4

1 に答える 1

3

C4では、randomIntと呼ばれるクラスレベルのメソッドを持つC4Mathクラスを使用できます...

[C4Math randomInt:255];0 から 255 までの乱数が返されます。

方法もありrandomIntBetweenA:andB:ます...

[C4Math randomIntBetweenA:100 andB:200]100 から 200 の間の randomInt が得られます...

内部的には、これらのメソッドは次のようになります。

+(NSInteger)randomInt:(NSInteger)value {
    srandomdev();
    return ((NSInteger)random())%value;
}

+(NSInteger)randomIntBetweenA:(NSInteger)a andB:(NSInteger)b{
    NSInteger returnVal;
    if (a == b) {
        returnVal = a;
    }
    else {
        NSInteger max = a > b ? a : b;
        NSInteger min = a < b ? a : b;
        NSAssert(max-min > 0, @"Your expression returned true for max-min <= 0 for some reason");
        srandomdev();
        returnVal = (((NSInteger)random())%(max-min) + min);
    }
    return returnVal;
}
于 2012-04-30T21:23:11.460 に答える