【问题标题】:How to Generate 10 random numbers form a range of 1 to 100?如何从 1 到 100 的范围内生成 10 个随机数?
【发布时间】:2016-01-23 03:56:59
【问题描述】:

我正在尝试使用来自和 Math.random 的循环来运行 Math.random 10 次以获得 10 个随机数?

【问题讨论】:

  • 是否重复?好的:使用循环。不行:使用随机播放。搜索和播放。编写代码,然后(如果需要)询问有关代码的问题,并且行为是/不表现。
  • 谷歌搜索“mdn random”给了我developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…,它提供了您可能想要的所有示例。

标签: javascript loops random numbers


【解决方案1】:

假设您正在生成 10 个随机整数并希望它们的范围最大为 1000,您可以执行以下操作:

var numberOfRandoms = 10;
var maxRange = 1000;
var results = [];

for (var i=0; i<numberOfRandoms; i++) {
    var random = Math.floor((Math.random() * maxRange) + 1);
    results.push(random);
}

您可以使用变量来处理不同数量的结果或范围。

【讨论】:

    【解决方案2】:

    要获取 1 到 100 之间的数字,请使用此

    var numbers = [];
    for(var i = 0; i < 10; ++i) {
     document.write(Math.floor(Math.random() * 100) + 1);
    }
    

    解释:

    • 1 是您的起始编号
    • 100 是您的全部可能性

    更多信息,请点击Here

    【讨论】:

      【解决方案3】:

      在想要生成 10 个介于 1 到 100 之间的数字之前,您必须问自己的一件事是,您是要包括 1 而不是 100,还是包括 100 而不是 1,或者包括 1 和 100。

      /*
        Including min num as a part of rand number
        Not including max num as a part of rand number
      */
      
      function genRandNum(min, max) {
       return Math.random() * (max - min) + min;
      }
      //this gives a float integer
      
      
      /*
        Including min num as a part of rand number
        NOT including max num as a part of rand number
      */
      
      function genRandNum(min, max) {
        return Math.floor(Math.random() * (max - min)) + min;
      }
      
      
      /*
        Including min num as a part of rand number
        Including max num as a part of rand number
      */
      
      function genRandNum(min, max) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
      }
      
      /*
        To generate 10 rand numbers
      */
      
      function getRandNum() {
        var arr = [],
            len = 10;  
        for(var idx = 0; idx < len; idx++) {
          arr.push(genRandNum(1, 100));
        }
        return arr;
      }
      
      //To see the result
      console.log(getRandNum());

      我希望这会有所帮助。

      【讨论】:

        【解决方案4】:
        var numbers = [];
        for(var i = 0; i < 10; ++i) {
          numbers.push(Math.floor(Math.random() * 100) + 1);
        }
        

        Math.floor 将数字转换为整数。如果您对小数位没问题,请删除它。

        【讨论】:

        • 问题要求从 1 到 100 的数字。
        • @torazaburo 我忘记了 0 - 已修复。谢谢
        【解决方案5】:

        我试图找出相同的东西,我使用的是 Swift 4;所以这就是我想出的,一个简单的循环,我唯一还没有弄清楚的是它何时生成相同的数字 2 次......但希望这会有所帮助:

        // Generate 10 numbers in a range from 1 to  100    
        
        for number in 1...10 {        
            print(arc4random_uniform(101)) 
        }
        

        【讨论】:

          猜你喜欢
          • 2010-11-26
          • 1970-01-01
          • 1970-01-01
          • 2022-01-22
          • 2011-08-25
          • 1970-01-01
          • 2014-10-28
          • 1970-01-01
          • 2013-11-19
          相关资源
          最近更新 更多