Sebuah angka acak dari min ke max
Fungsi bawaan Math.random()
membuat sebuah angka acak dari 0
ke 1
(tidak termasuk 1
).
Tulis fungsi random(min, max)
untuk menghasilkan angka floating-point acak dari min
kemax
(tidak termasuk max
).
Contoh kerjanya:
alert( random(1, 5) ); // 1.2345623452
alert( random(1, 5) ); // 3.7894332423
alert( random(1, 5) ); // 4.3435234525
Kita perlu “memetakan” semua nilai dari interval 0…1 ke dalam nilai dari min
kemax
.
Itu bisa dilakukan dalam dua tahap:
- Jika kita mengalikan angka acak dari 0…1 dengan
max-min
, maka interval nilai yang mungkin meningkat0..1
ke0..max-min
. - Sekarang jika kita menambahkan
min
, interval yang mungkin menjadi darimin
kemax
.
Fungsi:
function random(min, max) {
return min + Math.random() * (max - min);
}
alert( random(1, 5) );
alert( random(1, 5) );
alert( random(1, 5) );