如何在给定区间内生成随机偶数

How to generate random even numbers between a given interval?

本文关键字:随机 区间      更新时间:2023-10-16

我想要得到一组介于50到100之间的随机偶数,这就是我写的:

    int x;
    x=(2*(50+rand()%(100-50+1)));
当我输出这个时,我得到186166112190150160146104194168194178102200192130168134146184136

不在50到100之间,为什么?

谢谢你的帮助!

您的计算错误,您要求的是50到100之间数字的2倍。

x = 2 * ( rand() % 25 ) + 50
int x;
x=50+(2*(rand()%(26)));

X = rand() %(下层+ 1)+低

在你的例子中:x = rand()%51 + 50