retour au cours

Un nombre aléatoire de min à max

importance: 2

La fonction intégrée Math.random() crée une valeur aléatoire de 0 à 1 (1 non compris).

Ecrivez la fonction random(min, max) pour générer un nombre aléatoire compris entre min et max (max non compris).

Quelques exemples:

alert( random(1, 5) ); // 1.2345623452
alert( random(1, 5) ); // 3.7894332423
alert( random(1, 5) ); // 4.3435234525

Nous devons “mapper” toutes les valeurs de l’intervalle 0…1 en valeurs de min à max.

Cela peut être fait en deux étapes:

  1. Si nous multiplions un nombre aléatoire de 0… 1 par max-min, l’intervalle des valeurs possible augmente de 0..1 à 0..max-min.
  2. Maintenant, si nous ajoutons min, l’intervalle possible devient de min à max.

La fonction:

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

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