使用stdlib.h在设备上模拟概率(例如iPhone)

时间:2012-07-29 17:02:03

标签: ios random simulation probability

愚蠢的愚蠢问题,但我们在这里......

所以,我想在iOS应用程序中生成一些随机事件(在我的例子中是游戏)。我编写了一个函数“verifyEvents”,我每次加载特定视图(游戏场景)时都会调用它。

将概率与我为每个事件分配值的事件相关联(例如,杀死玩家:0.05,额外奖励0.08)。

在函数中,我使用CCRANDOM_0_1()生成一个随机数,这是一个基于stdlib.h中定义的random()函数的iOS宏。如果数字小于指定值,则触发事件(下面是代码)。

#define CCRANDOM_0_1() ((random() / (float)0x7fffffff ))

这是最好的方法,还是在应用中使用其他内容?

-(void) verifyEvents
{
    float value = CCRANDOM_0_1() ;
    float eventPValue = 0.05f;

    if(value<eventPValue){
        CCLOG(@"EVENT!");
    }
}

1 个答案:

答案 0 :(得分:0)

好的,按照@lukya的建议,我在gamedev上提出了问题并做了一些更多的研究。到目前为止,我得到了两个看似安静有趣的答案(应该与我的问题上的评论一起阅读)。

编辑:忘记将链接放在这里(仅在评论中): https://gamedev.stackexchange.com/questions/33236/simulating-probability