生成特定的随机数
Posted
技术标签:
【中文标题】生成特定的随机数【英文标题】:Generate specific random number 【发布时间】:2021-08-16 02:48:16 【问题描述】:我正在尝试创建一种从特定数字选择中生成随机数的方法,它必须是 0、90、180 或 270。
这是我目前在一定范围内生成随机数的方法,但我不确定如何从特定选择中生成随机数。
int randomNum(int min, int max)
return rand() % max + min;
【问题讨论】:
生成一个 0 到 3 之间的数,然后乘以 90 【参考方案1】:嗯,所以我认为您正在尝试在数组或所谓的选项列表中选择特定数字,我在这里为您提供了一个快速示例。你可以创建一个包含所有选项的数组,并让这个方法从给定的数组中返回一个值。
#include <iostream>
#include <stdlib.h>
#include <time.h>
int main ()
srand ( time(NULL) ); //initialize the random seed
const char arrayNum[4] = '1', '3', '7', '9';
int RandIndex = rand() % 4; //generates a random number between 0 and 3
cout << arrayNum[RandIndex];
更多详情 - http://www.cplusplus.com/forum/beginner/26611/
【讨论】:
对于特定列表,0、90、180 或 270,那么(rand%4)*90)
可能是更有效的解决方案。对于一般情况,您的“查找表”想法很好。
***.com/questions/10984974/… ***.com/questions/49880304/… ***.com/questions/2560980/… 请注意,C++ 标准具有从整数范围进行采样的工具,没有这些缺陷。见***.com/questions/288739/…以上是关于生成特定的随机数的主要内容,如果未能解决你的问题,请参考以下文章