Exercice 36/41
Dans le fichier "script.js"
:
- déclarez la variable
result
; - utilisez
Math.random()
pour générer un nombre entre 0 et 10 (voir l'astuce); - cliquez sur "Soumettre ma réponse".
Leçon 36/41
Pour générer un nombre aléatoire, il faut utiliser la fonction random()
. Cette fonction génère un nombre décimal entre 0 (inclus) et 1 (non-inclus).
Exemple :
var resultat = Math.random();
Par défaut Math.random()
génère un nombre décimal dans l'intervalle [0-1[.
Si vous voulez modifier cet intervalle, il va falloir ajouter un peu de code.
Par exemple pour :
- avoir un intervalle de 0 à 10, il faudra multiplier ce que donne
Math.random()
par 10; - avoir un nombre entier, car par défaut c'est un décimal. Mais il faudra utiliser autre chose que
Math.round()
.
Pourquoi ?
Car pour l'instant, le nombre généré peut aller jusque 10.99 et des poussières. Avec Math.round()
cela donnera l'entier 11, mais on veut rester dans l'intervalle 0-10. Il faudra donc utiliser Math.floor()
qui arrondi à l'entier inférieur, donc 10.
Votre code devra tenir sur une seule ligne, voilà un début :
var nombre = Math.floor(ici la fonction Math.random() multiplié par 11);
134 Commentaires
-
thibault-vial-44-15
Bonjour, il faudrait peut être préciser dans l'énoncé que le 10 est exclus, ainsi on comprendait mieux l'importance d'utiliser "floor" pour cet exercice.le 29/01/2022 à 16h25
-
tullusovucre-1845-2
bonjour j'ai cette erreur " Votre balise DOCTYPE est incorrecte. Avez-vous écrit ceci : <!DOCTYPE html> ? " ma réponse est "var result = Math.floor(Math.random()*10) " je passe au suivant ? :ole 28/11/2021 à 21h31
-
meriam Admin
Bonjour, écrivez <!DOCTYPE html> au lieu de <!DOCTYPE HTML>
le 28/11/2021 à 22h41
-
caillarda-67
Voici mon code : var result = Math.floor(Math.random()*11); et voici le message d erreur :Vous devez mutiplier Math.random par 10 en paramètre de Math.floor.le 20/10/2021 à 15h30
-
meriam Admin
ah je m'excuse je voulais dire var result = Math.floor(Math.random()*10);
le 21/10/2021 à 01h05
-
caillarda-67
Bonjour, je ne comprends pas l'erreur : "En paramètre de Math.floor vous devez multiplier Math.random par un nombre. Voici mon code : var result = Math.floor(Math.random()*10+1);le 18/10/2021 à 09h06
-
meriam Admin
var result = Math.floor(Math.random()*11);
le 19/10/2021 à 10h47
-
canivet.gregory-40
var result = Math.floor(Math.random() * 10); est considéré comme le code correct, mais c'est faux car cela donne de 0 à 9... Merci pour l'inutile prise de tête déjà signalée en 2017 !le 20/06/2021 à 15h25
-
felixbacon31500-74
précisez entre 0 inclus et 10 exclus svple 19/06/2021 à 15h20
-
meriam Admin
Bonjour, La fonction Math.random() renvoie un nombre flottant pseudo-aléatoire compris dans l'intervalle [0, 1[ (ce qui signifie que 0 est compris dans l'intervalle mais que 1 en est exclu).Ce nombre peut ensuite être multiplié afin de couvrir un autre intervalle.
le 21/06/2021 à 02h52
-
felixbacon31500-74
faudrait préciser un nombre entier compris entre 0 et 10 dans l'énoncé de l'exercicele 19/06/2021 à 15h14
-
meriam Admin
Bonjour, La fonction Math.random() renvoie un nombre flottant pseudo-aléatoire compris dans l'intervalle [0, 1[ (ce qui signifie que 0 est compris dans l'intervalle mais que 1 en est exclu).Ce nombre peut ensuite être multiplié afin de couvrir un autre intervalle.
le 21/06/2021 à 02h58
-
melissa.manier-67
var result= Math.floor(Math.random()*10)+1); Bonjour, pourriez vous m'aider svple 09/06/2021 à 20h23
-
meriam Admin
Bonjour, n'ajoutez pas +1 .
le 10/06/2021 à 10h43
-
meriam Admin
Bonjour, n'ajoutez pas +1 .
le 10/06/2021 à 10h43
-
melissa.manier-67
var result= Math.floor(Math.random()*10)+1); Bonjour, pourriez vous m'aider svple 09/06/2021 à 20h23
-
meriam Admin
Bonjour, supprimez +1 =>var result=Math.floor(Math.random()*10);
le 10/06/2021 à 10h41
-
reuven-haddad-32
Dans les commentaires vous dites que Math.random ne prend aucun paramètres cependant j'ai testé le code suivant : var result = Math.floor(Math.random(0,11) * 10); et on me dit que c'est ok pouvez vous me donner plus d'informations svp par avance mercile 18/04/2021 à 11h10
-
meriam Admin
La fonction Math.random() renvoie un nombre flottant pseudo-aléatoire compris dans l'intervalle [0, 1[ (ce qui signifie que 0 est compris dans l'intervalle mais que 1 en est exclu) selon une distribution approximativement uniforme sur cet intervalle. Ce nombre peut ensuite être multiplié afin de couvrir un autre intervalle.
le 19/04/2021 à 14h37
-
reuven-haddad-32
Bonjour,le 18/04/2021 à 11h08
-
meriam Admin
Bonjour, quelle est votre problème?
le 19/04/2021 à 14h35
-
diana.assal-52
Bonjour, il y a une incohérence entre l"astuce donnée qui est vraie logico-analytiquement et le résultat de l'exercice considéré correct mais qui est faux car l'intervalle randomisé va de 0 à 9 (math.floor). Merci de bien vouloir corriger pour les futurs personnes à former.le 07/03/2021 à 12h32
-
meriam Admin
Votre code est correct.
le 08/03/2021 à 13h17
-
syrine376-59
var result=Math.floor(Math.random()*10); alert(result);le 16/10/2019 à 07h38
-
bouakkaz.f-7
ça peut vous aider: var result=Math.floor(Math.random()*10)le 25/05/2019 à 08h32
-
antoine.rouchon-11
Merci beaucoup !le 15/04/2019 à 10h13
Commentaires les mieux notés