【问题标题】:C++ loop until random generation is equal to certain number [closed]C ++循环直到随机生成等于某个数字[关闭]
【发布时间】:2013-09-09 02:45:20
【问题描述】:

我正在尝试做一个循环,直到使用 srand 生成的数字等于我想要的某个数字。解决此问题的最佳方法是什么?我尝试使用 do while 循环来执行此操作,但它不起作用。下面的例子

do{
num = rand()%10+1;
}while(x == 5);
cout << x;

“x”数总是等于一个随机数,但它不会像语句中那样总是等于 5

【问题讨论】:

  • 那段代码 sn-p 意义不大。
  • 我首先在那个循环中设置x,而不是一些幻象num。否则你可能要等一会儿。既然你没有对号码本身做任何事情,为什么不只是 while ((rand() % 10 + 1) != 5); 呢? (cmets 关于这不会给 1 到 10 之间的每个值都保留一个战斗机会)。
  • cout &lt;&lt; 5; 似乎更合适,放弃循环。

标签: c++ loops random do-while


【解决方案1】:
do{
x = rand()%10+1; //Use number which changes
}while(x != 5);  //Use Not Equal to 5 !
cout << x;

x=5;
do{
num = rand()%10+1; 
}while(num != x);  //Check if x equals n
cout << num;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-22
    • 1970-01-01
    • 2013-04-15
    • 1970-01-01
    • 2017-01-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多