首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >随机AI /切换案例?

随机AI /切换案例?
EN

Stack Overflow用户
提问于 2009-10-13 16:18:26
回答 3查看 420关注 0票数 0

所以我在这里有一个非常简单的游戏…,现在AI几乎是完美的,我希望它时不时地犯错误。唯一能让玩家获胜的方法就是我把电脑的速度降到一个让人麻木的容易的程度。

我的逻辑是有一个switch case语句,如下所示:

代码语言:javascript
运行
复制
int number = randomNumber

case 1:
computer moves the complete opposite way its supposed to
case 2:
computer moves the correct way

我怎么能让它选择情况2的68% (随机百分比,只是一个例子)的时间,而仍然允许一些机会,使计算机失败?开关柜是正确的方法吗?这样,难度和速度都可以保持在较高水平,但当计算机出错时,玩家仍然可以获胜。

我在用iPhone。如果有更好的/不同的方法,我愿意接受。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-10-13 16:20:47

Generating Random Numbers in Objective-C

代码语言:javascript
运行
复制
int randNumber = 1 + rand() % 100;

if( randNumber < 68 )
{
//68% path
}
else
{
//32% path
}
票数 1
EN

Stack Overflow用户

发布于 2009-10-13 16:20:53

代码语言:javascript
运行
复制
int randomNumber = GeneraRandomNumberBetweenZeroAndHundred()

if (randomNumber < 68) {
computer moves the complete opposite way its supposed to
} else {
computer moves the correct way
}
票数 0
EN

Stack Overflow用户

发布于 2009-10-13 16:21:30

许多PRNG将提供[0,1]范围内的随机数。您可以改用if-语句:

代码语言:javascript
运行
复制
   n = randomFromZeroToOne()

   if n <= 0.68:
        PlaySmart()
   else: 
        PlayStupid()

如果你要生成一个从1到N的整数,而不是一个浮点数,请注意结果中的modulo bias

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1561321

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档