如何在C++中输出两组不同的随机数
How to output two different sets of random numbers in C++?
到目前为止,这是我的代码:
#include <iostream>
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int DealerRoll(int dealerRoll)
{
srand (time(NULL));
for (int dealerCount = 1; dealerCount <= 3; dealerCount++)
{
dealerRoll = rand()% 6+1;
cout << dealerRoll << " ";
}
return dealerRoll;
}
int PlayerRoll(int playerRoll)
{
srand (time(NULL));
for (int playerCount = 1; playerCount <= 3; playerCount++)
{
playerRoll = rand()% 6+1;
cout << playerRoll << " ";
}
return playerRoll;
}
int main()
{
int dealerRoll;
int playerRoll;
cout << "Dealer's Roll: " << endl;
DealerRoll(dealerRoll);
cout << endl << "Your Roll: " << endl;
PlayerRoll(playerRoll);
system ("pause");
return 0;
}
我的问题是庄家和玩家的随机(骰子(掷骰子总是相同的。例如,输出将是这样的:
Dealer's Roll:
1 6 3
Your Roll:
1 6 3
如何让玩家的掷骰子与荷官的掷骰子不同?
Dealer's Roll:
1 6 3
Your Roll:
4 2 5
这是因为您不断重置种子。这需要不直观地完成一次,否则您每次都会返回相同的看似随机的数字。(实际上确实有特定的用例,这就是您想要做的(要只执行一次,请在执行的顶部包含此行一次,而不是在函数的每个连续循环中。
srand (time(NULL));
参考有关该主题的其他更深入的答案。
srand(( — 为什么只调用一次?
相关文章:
- 两组使用lambda函数的大括号
- 尝试查找两组点的交集,错误"No viable overloaded '=' "
- 如何在两组线程之间正确来回传输控制权
- 两组的高效交集
- 如何匹配不同环境的两组?C++
- 如何在两组上做两指针技术
- 如何在C++中输出两组不同的随机数
- 比较两组相等的类型
- 将字符串从头到尾分成两组,每组 C++
- 使用set_union合并两组时,只读位置的分配
- 在同一目录下编译两组C 二进制文件
- 比较两组std :: feek_ptr
- 给定两组 xyz 坐标和一个 sag (a) 的值,我可以在 OpenGL 中的这些点之间绘制一个悬链线
- 两组向量之间的四元旋转
- 如何在C 中使用OpenMP并行运行两组代码
- 创建和比较两组卡片
- OpenGL3两组着色器,纹理显示为黑色
- 两组的交集
- 形成两组的并集似乎给出了错误且不一致的答案
- 如何使用 cmake 分别编译两组源文件