c++ - 四个不相同的随机整数
问题描述
对于我的程序,我需要四个不相同的随机个位数整数。
含义:即 1568 有效,1251 无效。
我找到了一种非常简单的方法来实现这一点,方法是检查数字是否等于先前生成的整数,如果是,则生成一个新整数。
srand(time(NULL));
int dig1 = rand() % 10;
int dig2 = rand() % 10;
while (dig2 == dig1)
{
dig2 = rand() % 10;
}
int dig3 = rand() % 10;
while (dig3 == dig1 || dig3 == dig2)
{
dig2 = rand() % 10;
}
int dig4 = rand() % 10;
while (dig4 == dig1 || dig4 == dig2 || dig4 == dig3)
{
dig2 = rand() % 10;
}
有没有更优雅的编码方式?感谢您的帮助,祝您有美好的一天!
解决方案
推荐阅读
- ios - 如何快速创建带有水平滑动单元格的变换 UIView 玻璃?
- java - Jaxb2Marshaller 子类扫描
- python - 仅在一个 jupyter 笔记本中没有名为 cv2 的模块
- android - 如何将抽象与 ViewBinding 与基本活动一起使用?
- elasticsearch - Elastic Search 同义词 - 删除操作
- r - 根据 R 中的另一个分组从分组变量中选择样本
- python - 如何在逐行移动时在python中使用apply函数
- javascript - PDF.js 在 ios 中显示空白页
- react-native - React-native 和 ASP.Net 核心 RestfulAPI 之间的通信
- java - 如何在不使用 getter 和 setter 的情况下显示另一个类的变量?