Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript程序随机生成一个单位数(0,1和#x2026;9)一百次,并输出0、1、2和#x2026;的数量;。生成了9个_Javascript_Loops - Fatal编程技术网

JavaScript程序随机生成一个单位数(0,1和#x2026;9)一百次,并输出0、1、2和#x2026;的数量;。生成了9个

JavaScript程序随机生成一个单位数(0,1和#x2026;9)一百次,并输出0、1、2和#x2026;的数量;。生成了9个,javascript,loops,Javascript,Loops,如何编写一个JavaScript程序,将一个数字(0,1,…9)随机生成一百次,并输出生成的0、1、2、…9的数量 我可以生成一百个数字(见下文),但不知道如何将它们排序到计数器中 <script> for (i = 0; i < 100; i++) { num = Math.floor((Math.random() * 10)); document.write(num); } </script> 对于(i=0;i

如何编写一个JavaScript程序,将一个数字(0,1,…9)随机生成一百次,并输出生成的0、1、2、…9的数量

我可以生成一百个数字(见下文),但不知道如何将它们排序到计数器中

<script>
    for (i = 0; i < 100; i++) {
        num = Math.floor((Math.random() * 10));
        document.write(num);
    }
</script>

对于(i=0;i<100;i++){
num=Math.floor((Math.random()*10));
文件写入(num);
}

您可以将每个数字的数字保存在一个数组中,其中每个索引表示其对应的数字(即
0
th索引将包含生成的
0
s的数字),然后每次从
Math.random
中提取时,都会增加数组中的数字

var numOfEachNumber = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];

for (var i = 0; i < 100; i++) {
    var num = Math.floor((Math.random() * 10));
    numOfEachNumber[num]++; // Increment the value of the index of the number
                            // that was generated
    document.write(num);
}

for (var i = 0; i < 10; i++) {
    document.write(i + ': ' + numOfEachNumber[i]);
}
var numOfEachNumber=[0,0,0,0,0,0,0,0,0];
对于(变量i=0;i<100;i++){
var num=Math.floor((Math.random()*10));
numOfEachNumber[num]+;//递增该数字的索引值
//这是产生的
文件写入(num);
}
对于(变量i=0;i<10;i++){
写(i+':'+numOfEachNumber[i]);
}

您可以使用计数器对象计算频率

var计数器={};

对于(i=0;i)确切的问题是什么?使用一个数组并计算其中的数字。这是你的家庭作业吗?旁注:你的代码正在成为牺牲品(除非你没有显示声明)…这就是计算随机生成的0、1、2等数量的确切问题。你可能是指numOfEachNumber[i]。我只是想要输出,所以我将最后一行编辑为:document.write(I+“'s”+numOfEachNumber[I],“”);我希望输出为0 1 2 3 4 5 6 7 8 9,每个数字下面都有一个总数?@Shawn
标记应该用作块标记,如下所示:
段落的内容
。如果希望输出位于每个数字下面,我建议使用int创建一个。
var counter = {};

for (i = 0; i <= 100; i += 1)
{
  num = Math.floor((Math.random() * 10));
  counter[num] = (counter[num]) ? (counter[num]) += 1 : counter[num] = 1;
}

print = function(x) { console.log(x + ": " + counter[x]); };

Object.keys(counter).forEach(print);