如何在1到9999之间创建100个4位数的随机数,并将数字排成10行,每行10个数字
How to create 100 random numbers between 1 and 9999 with 4 digits, and place numbers in 10 rows of 10 numbers?
有一个问题,弄清楚如何得到这个解决,我已经搜索和寻找答案,但他们不像我在寻找什么。这是初学者的东西,我意识到,但任何帮助将高度赞赏。
下面的代码是我的老师给的,它可以创建一个随机数。对于我的生活,我想不出如何使它创建100个随机数,并使它们的10 × 10的平方。
eg. 5468 2367 1587 2587 2310 9802 0154 8753 4965 2571
3249 3248 2158 4659 1321 1278 9871 0123 4654 4587
etc. for 10 rows.
<div id="answerswer"></div>
<script type="text/javascript">
function giveValues() {
var length, zeroes;
var number = Math.round((Math.random() * 9999));
// toString()-method and lenght to set amount of digts
zeroes = 4 - number.toString().length;
for (var j = 1; j <= zeroes; j++) {
number = "0" + number;
}
return number;
}
document.getElementById("answerswer").innerHTML = giveValues();
我也知道有if (j % nameofvar == 0){用于制作新行,但我无法使其工作
考虑到您还没有学习数组,请尝试以下内容,因为我认为它最好与您正在寻找的内容内联。这是一个普朗克http://plnkr.co/edit/LltYPtSfR9Ndo46kYmVN?p=preview。
<div id="answerswer"></div>
<script>
function giveValues() {
var length, zeroes;
var number = Math.round((Math.random() * 9999));
// toString()-method and lenght to set amount of digts
zeroes = 4 - number.toString().length;
for (var j = 1; j <= zeroes; j++) {
number = "0" + number;
}
return number;
}
var columns = 10;
var total = 100;
var bigString = "";
for (var i=0; i<total; i++) {
if (i != 0 && i % columns == 0) {
bigString += "<br/>";
}
bigString += giveValues(i).toString() + " ";
}
var answer = document.getElementById("answerswer");
answer.innerHTML = bigString;
</script>
最基本的方法:
function lpad(number) {
while (number.toString().length < 4) {
number = "0"+number;
}
return number;
}
var max = 9999;
var matrix = [];
var size = 10;
for (var i = 0; i < size * size; i++) {
if (i % size === 0) {
matrix.push([]);
}
var number = lpad(Math.ceil(Math.random() * max));
matrix[matrix.length - 1].push(number);
}
document.getElementById("answerswer").innerHTML = matrix.join("<br />");
<div id = "answerswer"></div>
使用数组更有效,但您也可以简单地连接。
你可以生成一个大的随机数,然后将其限制为4位。
试试这个:
function giveValues() {
var number = Math.round((Math.random() * 999999999));
return number.toString().substr(0, 4);
}
var arr = [];
for(var i = 0; i < 10; i++){
arr.push([giveValues(), giveValues(), giveValues(), giveValues(), giveValues(), giveValues(), giveValues(), giveValues(), giveValues(), giveValues()]);
}
document.getElementById("answerswer").innerHTML = arr.join(' <br/>').replace(/,/g,' ');
https://jsfiddle.net/moshekarmel1/34spm4hh/
相关文章:
- 如何在javascript中获得与特定数字相等的随机数
- 在数组中生成随机数,没有任何重复的数字
- 如何在javascript中生成任意四个数字之间的随机数
- 如何从生成随机数的数组中确定最高和最低数字;JavaScript
- 需要用户输入一个随机数,然后提醒用户数字 ibnputted
- 创建使用用户输入的数字范围生成的随机数.(JavaScript)
- Javascript - 在一定范围内生成随机数,不包括某些数字
- 使用while循环打印随机数,直到达到某个数字
- 如何在1到9999之间创建100个4位数的随机数,并将数字排成10行,每行10个数字
- 如何取一个现有的数字,并在此基础上生成一个随机数?[javascript]
- 如何在javascript中返回一个随机数,它总是大于前一个数字
- 使用Java脚本在数字表中30次更改2个随机数
- 随机数,它不等于前一个数字
- 如何得到一个双随机数,并把它的数字变量
- 函数,该函数接受两个数字并返回两个数字之间的随机数.(JavaScript)
- 不重复前一个数字的数学随机数
- 使用Javascript获得2个数字之间的随机数,但具有特定范围的可能性较小
- 如何将随机数添加到结果处的存储变量中,作为一个数字,而不是两个字符串加在一起
- Javascript:记录偶数和奇数随机数的计数,并得到每个数字的总和
- 生成2个数字之间的随机数