kembali ke pelajaran

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:

  1. Jika kita mengalikan angka acak dari 0…1 dengan max-min, maka interval nilai yang mungkin meningkat0..1 ke 0..max-min.
  2. Sekarang jika kita menambahkan min, interval yang mungkin menjadi darimin ke max.

Fungsi:

function random(min, max) {
  return min + Math.random() * (max - min);
}

alert( random(1, 5) );
alert( random(1, 5) );
alert( random(1, 5) );