как сделать чтоб рандомное число из диапазона чисел от 7 до 11 выводилось в alert
при том чтоб например
число 6 выводилось 5 раз
число 7 выводилось 20 раз
число 8 выводилось 70 раз
число 9 выводилось 90 раз
число 10 выводилось 15 раз
нужно чтоб все это рандомно без повторений
благодарю за помощь
JavaScript
вопрос про JS, рандом чисел в %
function getRandomInteger(a, b) {
let min, max;
a = Number.parseInt(a, 10);
if (Number.isNaN(a)) {
console.error("Первый аргумент getRandom не является целым числом.");
return NaN;
}
b = Number.parseInt(b, 10);
if (Number.isNaN(b)) {
console.error("Второй аргумент getRandom не является целым числом.");
return NaN;
}
min = a < b? a : b;
max = a > b? a : b;
return Math.floor(Math.random() * (max - min)) + min;
}
function randomArray(begin, end, mask) {
if (Array.isArray(mask)) {
let array, i, rnd, num, j;
array = [];
for (i = 0; i < mask.length; i += 1) {
rnd = getRandomInteger(begin, end);
if (Number.isNaN(rnd)) {
console.error("getRandomInteger вернула NaN.");
break;
}
num = Number.parseInt(mask[i], 10);
if (Number.isNaN(num)) {
console.error((i + 1) + "-й элемент в mask не является целым числом.");
num = 0;
}
for (j = 0; j < num; j += 1) {
array.push(rnd);
}
}
return array;
} else {
console.error("Третий аргумент randomArray не является массивом")
}
}
let mask = [2, 3, 5, "d", 3];
let array = randomArray(6, "12", mask);
for (let i = 0; i < array.length; i += 1) {
alert(array[i]);
}
let min, max;
a = Number.parseInt(a, 10);
if (Number.isNaN(a)) {
console.error("Первый аргумент getRandom не является целым числом.");
return NaN;
}
b = Number.parseInt(b, 10);
if (Number.isNaN(b)) {
console.error("Второй аргумент getRandom не является целым числом.");
return NaN;
}
min = a < b? a : b;
max = a > b? a : b;
return Math.floor(Math.random() * (max - min)) + min;
}
function randomArray(begin, end, mask) {
if (Array.isArray(mask)) {
let array, i, rnd, num, j;
array = [];
for (i = 0; i < mask.length; i += 1) {
rnd = getRandomInteger(begin, end);
if (Number.isNaN(rnd)) {
console.error("getRandomInteger вернула NaN.");
break;
}
num = Number.parseInt(mask[i], 10);
if (Number.isNaN(num)) {
console.error((i + 1) + "-й элемент в mask не является целым числом.");
num = 0;
}
for (j = 0; j < num; j += 1) {
array.push(rnd);
}
}
return array;
} else {
console.error("Третий аргумент randomArray не является массивом")
}
}
let mask = [2, 3, 5, "d", 3];
let array = randomArray(6, "12", mask);
for (let i = 0; i < array.length; i += 1) {
alert(array[i]);
}
Создаешь массив с нужными значениями
{7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,...
"Перемешиваешь" любым способом (например выбираешь случайное число-индекс и меняешь местами с 0 индексом )
{7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,...
"Перемешиваешь" любым способом (например выбираешь случайное число-индекс и меняешь местами с 0 индексом )
Похожие вопросы
- вопрос по JS. " простой ()";
- JS/ Перевод числа в буквы...
- Небольшой вопрос по JS
- Вопрос по JS. Пожалуйста скажите почему код дает 6 пять раз. Почему не 1,2,3,4,5 .Очень запуталась от setTimeout.
- Тупой вопрос по js
- Факториал числа JS
- Помогите определиться с выбором нового языка (JS(TS) vs Java)
- Js фреймворки, что полезного можно для себя найти?
- В чем цель фреймворков js web?
- Помогите с кодом JS. Как в данном случае вывести сообщение о равных числах?