Мои математические знания могут быть ограничены, чтобы решить это самостоятельно.Я нашел похожий вопрос , однако, с фокусом на центре, а не на границах.
Я хотел бы создать случайные числа с max и min, но с фокусом на max и min,так что числа ближе к максимальным и минимальным значениям должны появляться чаще, чем те, которые находятся между ними.
Я помню, что в математике есть функция для создания кривой параболы:
И с помощью этого онлайн-инструмента я сгенерировал нужную мне функцию, которая должна выглядеть примерно так:
y = 0,05 * x ^ 2
Это моя основная идея, и, пытаясь превратить ее в javascript, я закончил с этим:
for (let i = 0; i < 100; i++) {
// Create random x with ^ 2 with max=100 and min=0
let x = Math.pow(Math.floor(Math.random() * (100 - 0 + 1)) + 0, 2);
// log the random number in the console
console.log(0.05 * x);
}
Но, конечно, это не имеет никакого реального смысла, как я также вижу в консоли(Я заказал их, чтобы было понятнее)
> 0 0
> 0.05
> 0.05
> 0.2
> 0.2
> 0.8
> 2.45
> 3.2
> 3.2
> 3.2
> 4.05
> 4.05
> 4.05
> 6.05
> 8.45
> 8.45
> 14.45
> 16.2
> 16.2
> 16.2 20 20
> 22.05
> 22.05
> 22.05
> 26.45
> 28.8
> 28.8
> 31.25
> 33.8
> 36.45
> 39.2
> 42.05
> 48.05
> 48.05
> 48.05
> 51.2
> 57.8
> 57.8
> 57.8
> 64.8
> 64.8
> 64.8
> 68.45
> 76.05
> 88.2
> 88.2
> 92.45
> 92.45
> 92.45
> 96.8
> 101.25
> 105.8
> 110.45 125
> 130.05
> 130.05
> 135.2
> 140.45
> 140.45
> 145.8
> 145.8
> 145.8
> 156.8
> 162.45
> 162.45
> 162.45 180 180
> 198.45
> 204.8
> 204.8
> 224.45
> 231.2
> 231.2
> 231.2
> 231.2
> 238.05
> 238.05
> 259.2 320 320
> 328.05
> 344.45
> 352.8
> 352.8
> 361.25
> 369.8
> 387.2
> 387.2
> 423.2
> 423.2
> 432.45
> 451.25
> 460.8
> 470.45
> 470.45
> 490.05
> 490.05
Кто-нибудь, у кого, возможно, есть идея?