当以最多75的数字(36)开始时,Rand如何工作

时间:2015-02-15 16:51:20

标签: c++ random

我正在创建一个随机数生成器,每当我运行当前代码块时,我总会得到一些超出预期限制的数字。它的工作方式是我有一组随机生成的数字,从36-75开始,调整后的数字比原始数字高5,低5。例如,我最终会得到75以上的数字。最高为105。 这只是6个数字中的一个。

//Displays picks for Number 4
pick4 = (rand() % 75) + 36;
if (pick4 == pick3)
    pick4 = (rand() % 75) + 36;
if (pick4 + 5 < 75 + 1)
{
if (pick4 - 5 > 0)
    {
        adjHighPick4 = pick4 + 5;
        adjLowPick4 = pick4 - 5;
    }
}

1 个答案:

答案 0 :(得分:1)

当你想获得从AB的随机整数时,你需要一个从0B-A的随机整数,你要添加{{1} }}。因此,您应该写Arand() % 75 + 36

而不是rand() % 39 + 36