Exercice 2/6
Soit la variable result
et check
déjà déclarée et check
qui vaut false
.
Dans le fichier "script.js"
:
- écrivez une structure
while
; - tant que
check
estfalse
:- demandez à l'utilisateur un nombre entre 0 et 10 avec
prompt()
etparseInt()
; - affectez le résultat à
result
; - si
result
n'est pas correct, affectezfalse
àcheck
(voir l'astuce); - sinon affectez
true
àcheck
pour sortir de la boucle;
- demandez à l'utilisateur un nombre entre 0 et 10 avec
- cliquez sur "Soumettre ma réponse".
Leçon 2/6
Exercice de rappel dans lequel il faut écrire un script qui demande à l'utilisateur un nombre entre 0 et 10 tant qu'il n'a pas donné un nombre correct.
Pour vérifier que result
est correct, il faut vérifier si c'est bien entre 0 et 10 inclus. Et que c'est bien un nombre avec isNaN(result)
.
isNaN()
vérifie si un nombre est incorrect.
En effet prompt()
renvoie une chaîne de caractères, parseInt()
permet de convertir la chaîne en nombre ("11" > 11), si la chaîne est vide alors parseInt()
renverra NaN
.
Commentaires les mieux notés
AlexisIsCoding
tibf83
Bien que ce soit un peu contraire au but de l'exercice, on peut le valider en incrémentant "i" en fin de boucle...
mram Administrateur
C'est un soucis de correction automatique.
fumey.claire
Bonjour, Je ne trouve pas la solution, pouvez-vous me conseiller s'il vous plait ? Merci ...
199 Commentaires
tibf83
Bien que ce soit un peu contraire au but de l'exercice, on peut le valider en incrémentant "i" en fin de boucle...le 25/09/2018 à 20h27
meriam Administrateur
Vous n'avez pas besoin d'une variable i, ni de l'incrémenter.
le 05/10/2018 à 17h35
mram Administrateur
C'est un soucis de correction automatique.
le 21/05/2017 à 22h55
fumey.claire
Bonjour, Je ne trouve pas la solution, pouvez-vous me conseiller s'il vous plait ? Merci ...le 17/12/2016 à 18h23
Marodheure
Ok mercile 22/05/2017 à 15h49
julien.malahel
Bonjour, mon code semble fonctionner correctement mais l'exercice n'est pas validé, d'où vient l'erreure? var check; while (!check) { var result = parseInt(prompt("entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { !check; } else { check = true; } }le 05/06/2017 à 11h51
v.redois
"ERROR: SCRIPT EXECUTION TIMED OUT." Autre remarque : isNAN() ne fonctionne pas. Ca ne fonctionne qu'en utilisant isNaN()le 23/05/2016 à 00h29
Chris
Bizarrement l'exercice est validé si à la place des "||" on met des "&&" : if (isNaN(result) && result > 10 && result < 0) mais ce code ne veut plus rien dire lolle 29/11/2016 à 11h33
Alex
Bonjour, j'ai bien compris que la correction automatique de cet exercice ne fonctionne pas, aussi je passe à l'exercice suivant. Pouvez-vous tout de même valider (ou pas) mon code ? Le voici : var result; while (!check) { result = parseInt(prompt("donnez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 05/03/2017 à 17h04
mram Administrateur
C'est bien isNaN() qu'il faut utiliser. La fonction isNAN() n'éxiste pas. L'énoncé a été mis à jour.
le 23/05/2016 à 00h29
mram Administrateur
Votre code est juste, ne tenez pas compte de l'erreur.
le 18/12/2016 à 19h10
mram Administrateur
Oui votre code est correct :)
le 09/03/2017 à 00h37
Nathalie.v
Bonjour, Je ne comprends pas bien l'intérêt du "isNaN()" dans cet exercice. En effet, si result n'est pas un nombre (par exemple "truc"), il ne passe pas la condition if (result >= 0 && result <= 10) , non? Donc dans ce cas on refait la boucle. Puis, si j'écris, par exemple, par erreur 2k à la place de 2, le parseInt ne va retenir que le 2 donc je ne vois pas à quoi sert le isNaN() dans ce cas aussi. Si je ne mets rien en input, dans mon code, je dois recommencer jusqu'à ce que 0<=result<=10 donc pareil. Je ne trouve pas de cas où ça ne marche pas. Pouvez-vous m'éclairer sur l'utilité de isNaN() ? Merci.le 09/02/2017 à 11h55
mram Administrateur
N'en tenez pas compte, cet exercice va être refait.
le 30/11/2016 à 16h36
lisa.l.pernet
TypeError: Cannot read property 'message' of null --> Cet exercice a-t-il été corrigé ou mon code contient-il une erreur?le 24/01/2017 à 13h55
pascal-ds
bonjour, je reviens sur cet exercice que je n'avais pas réussi. j'ai tapé un nouveau code. Apparemment le script fonctionne, tant que je n'ai pas saisi un chiffre entre 0 et 10 il repose la question. Je n'ai pas de plantage de boucle infinie. Sauf que je ne peux pas valider l'exercice, j'ai le message d'erreur timed out... Le programme bug ou c'est mon code qui ne va pas ?le 12/10/2016 à 11h02
cedruyne
Bonjour, je ne trouve pas mon erreur. Lorsque j’exécute le code JS j'ai bien le résultat attendu. var result, check = false; while (check === false) { result = parseInt(prompt("Saisir un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 25/01/2017 à 16h24
mram Administrateur
Comme j'ai dit précédemment, cet exercice bug, donc pas la peine de rester coincer dessus, passez simplement au suivant.
le 14/02/2017 à 00h54
mram Administrateur
@lisa.l.pernet : votre logique de code est bonne. La correction bug pour cet exercice en effet.
le 27/01/2017 à 15h43
mram Administrateur
@cedruyne : idem, votre logique de code est bonne. La correction bug pour cet exercice.
le 27/01/2017 à 15h44
s.gaudefroy
bonjour, "ERROR: SCRIPT EXECUTION TIMED OUT." sur cet exercice alors que mon code suit les instructions données, si erreur il y a, je ne la saisie pas et j'aimerais bien comprendre le pourquoi de ce message. mercile 08/09/2016 à 12h05
bsmeyers84
ERROR: SCRIPT EXECUTION TIMED OUT.le 08/09/2016 à 12h43
mram Administrateur
Ligne 8 il faudrait mettre "check = false" . Et le code lignes 6 à 13 doit avoir une tabulation en plus.
le 08/06/2017 à 11h31
mram Administrateur
Comme j'ai dit, il y a à priori un bug, le timed out est du à une boucle infinie...
le 16/10/2016 à 23h35
antho.lau
Bonsoir, pouvez-vous vérifier mon code ? J'ai le message d'erreur suivant "TYPEERROR: CANNOT READ PROPERTY 'MESSAGE' OF NULL". // L'exercice bug t-il toujours ? Si oui, comment fait t-on pour le valider ? Merci.le 31/01/2017 à 02h18
laurent.sama
"ERROR: SCRIPT EXECUTION TIMED OUT." "ERROR: SCRIPT EXECUTION TIMED OUT."le 12/09/2016 à 05h33
laurent.sama
TIME OUT var result=(result); var check=(false); while (check===false) { result = parseInt(prompt("Je vaux entre un et 10")); if (result < 0 || result > 10 || isNaN(result)) { check=false; } else { check=true; } }le 12/09/2016 à 06h42
jovidal
Toujours pas corrigé ? Mon code est bon ?le 01/06/2017 à 11h14
mram Administrateur
Oui c'est le même bug. Passez à l'exercice suivant c'est pas grave...
le 31/01/2017 à 15h13
mram Administrateur
Cet exercice va être revu pour éviter le "ERROR: SCRIPT EXECUTION TIMED OUT."
le 13/09/2016 à 18h02
jenebakone
bonjour,pouvez vous m'indiquer mon erreur?Mercile 27/10/2016 à 09h54
willy.julan
voila se que j'ai fait chez moi cela fonctionne, j'ai pas voulu utiliser la solution pour trouver par moi même : var result; while ((check===false)) { result = parseInt(prompt("saisir un nombre de 0 - 10")); if (result > 10 ||result < 0 || isNaN(result)) { check=false; } else { check=true; } } mais j'ai un message d'erreur time out , j'ai regarde l'astuce ça ressemble à se que j'ai fait pourtant j'ai même fait la condition de cette manière while (!(sheck)).. pareil je vois pas se qui cause cela ça marche chez moi pourtant!le 23/07/2016 à 16h30
mram Administrateur
Oui la logique est ok.
le 25/07/2016 à 16h31
pascal-ds
bonjour, la malédition du while continue... message d'erreur "time out". Pourtant quand j'exécute le scritpt cela semble bien fonctionner. Tant que je ne tape pas le chiffre demandé, Hal repose la question. Remarque : j'ai du déclarer la variable check, sans quoi le script ne s'exécute pas, ie : pas de fenetre prompt... j'ai essayé aussi avec if-else, il else-if... plus long et pas mieux.le 29/08/2016 à 10h36
mram Administrateur
J'ai optimisé le script, il ne devrait plus y avoir de "time out". Par contre lignes 6 à 8 il manque une indentation pour la structure "if".
le 29/08/2016 à 15h41
mram Administrateur
Attention, votre structure if/else doit être dans la boucle while. (mais la correction n'a pas encore été corrigée).
le 01/06/2017 à 16h36
pascal-ds
bonjour, hélas, marche toujours pas. L'indentation concerne-t-elle également les {} ou seulement les conditions et instructions ?le 30/08/2016 à 08h39
mram Administrateur
C'est presque bon, juste la ligne 7 est incorrecte (check = false). Mais attention cet exercice bug, donc ne tenez pas compte de l'erreur.
le 29/10/2016 à 16h53
mram Administrateur
Là votre indentation est correcte (tout ce qui est dans le while est indenté, tout ce qui est dans le if a une indentation en plus), c'est lisible, donc très bien de ce côté :)
le 30/08/2016 à 13h40
mram Administrateur
Par contre, votre code ne correspond pas à ce qui est demandé. Bien sûr il existe plusieurs façons de faire ce qui est demandé mais il est presque impossible de vérifier tous les cas possible. Donc il faut essayer de suivre les instructions même si il y a moyen de faire autrement (il y a de l'idée dans votre code). Regardez bien les étapes des instructions : il y a un SI et un SINON ça doit vous faire penser à une structure ...
le 30/08/2016 à 13h45
danderhy3
var result; while (!check) { result = parseInt(prompt("donnez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } } Mon code est il correct?le 19/05/2017 à 15h36
Marodheure
Bonjour, y a t'il encore une erreur dans mon code svp ? Ou c'est un soucis de correction automatique ?le 20/05/2017 à 00h23
comm Administrateur
J'ai une boucle infinie
le 31/03/2019 à 14h40
celine.bru.69-2
var result; while (!check) { result = parseInt(prompt("Entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }.le 29/04/2018 à 21h35
mram Administrateur
Bonjour, je confirme que votre code est correct. Vous pouvez passer à la suite.
le 04/05/2018 à 06h47
celine.bru.69-2
voici le code que j'avais fait et effectivement il est identique à votre réponse . C'est frustrant de ne pas pouvoir se rendre compte de son évolution avec tous les bugs des différents exercices . Merci beaucoup pour votre aide .le 29/04/2018 à 21h37
gippetvinardpriscillia-23
Pour me rassurer... ce sont des exercices qui seront revus pendant la formation ou déjà considérés comme acquis via le mois zéro ?le 22/07/2018 à 11h29
mram Administrateur
En formation vous partez de 0, donc vous reverrez toutes les notions.
Ces exercices ne sont là que pour vous donner un aperçu des langages qui seront vu et de ce qu'est la programmation web.
le 01/08/2018 à 05h11
imane.tayeb-92
Problème de boucle infini... Pourriez-vous m'indiquer mon erreur?le 11/09/2018 à 12h06
mram Administrateur
Votre code est correct, vous pouvez passer à la suite.
le 16/09/2018 à 07h37
slye44
Impossible de soumettre, ça ne fonctionne pas :\le 03/04/2018 à 09h41
veronique.nollet
Bonjour, je n'ai pas de réponse à soumettre. mon code est-il correcte ? var result; while (!check) { result = parseInt(prompt("Entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; }}le 17/04/2018 à 19h05
mram Administrateur
Bonjour, oui presque bon mais il manque des accolades dans la condition.
le 18/04/2018 à 05h11
nathalie.chenparis
Bonjour, je n'arrive pas a Soumettre du coup je pense que mon code n'est pas bon et ne vois pas mon erreur, j'ai relus l’énoncé plusieurs fois pour voir si il est cohérent à mon code mais je ne vois toujours pas où est le problèmele 14/05/2018 à 12h12
mram Administrateur
Bonjour, dans parseInt(), pas besoin de mettre "result = ". Et dans le "if" il ne faut pas de ; à la fin de la condition.
le 18/05/2018 à 05h09
armand1807
marche toujours pas... pourquoi il faut mettre un ! avant check ?? l'exercice dit tant check est false alors donner un nombre ect... si on met ce ! le check passe a true alors.. du coup ça marche plus fin bref je nage la !le 11/08/2017 à 13h04
mram Administrateur
Bonjour, non le "!" est un raccourci équivalent à "check == false" . On vérifie donc que la variable est considérée comme "false" . Votre dernière version du code est presque bonne : il faut juste faire attention à l'indentation.
le 16/08/2017 à 14h28
irene.xifra
Mon code: var result; while (!check) { result=parseInt(prompt("entrez un numero entre 0 et 10")); if (result<0 || result>10 || isNaN(result)) { check=false; } else { check=true; } } me donne l'erreur: "avez-vous bien converti le résultat de prompt() avec parseInt() et affecté le résultat à "result" ?" Comment faire svp?le 13/11/2017 à 15h00
mram Administrateur
Bonjour, mettez bien les accolades { à la ligne. Il faut qu'elles soient alignées avec leur binôme } . Et mettez des espaces autour des signes > <
le 16/11/2017 à 17h26
veronique.nollet
Bonjour, je n'arrive pas à valider mon script revu. var result; while (!check) { result = parseInt(prompt("Entrez un nombre entre 0 et 10")); } if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; }le 14/05/2018 à 18h16
mram Administrateur
Bonjour, il faut mettre la condition dans la boucle ...
le 18/05/2018 à 05h30
jnicolleau-87
Bonjour, impossible de soumettre ma réponse, mon code est-il correct ?le 03/05/2018 à 17h43
mram Administrateur
Bonjour, je ne peux pas vous dire car je ne vois plus le code utilisateur sur cet exercice depuis plusieurs jours. Mettez le code en commentaire et je vous répondrai.
le 04/05/2018 à 07h52
ambre.naude
Bonjour, mon code est il correct? Erreur(s) : Avez-vous bien écrit la structure if else ? Mercile 13/02/2018 à 14h52
mram Administrateur
Bonjour, n'oubliez pas d'indenter votre code à l'intérieur des accolades.
le 15/02/2018 à 23h47
nsanvarela-98
Bonjour, je ne comprend pas d'où vient l'erreur : var result; while (check) { result = prompt(parseInt("Entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 08/06/2018 à 19h49
mram Administrateur
Bonjour, votre code est correct. Ne tenez pas compte du message ici.
le 13/06/2018 à 04h24
YD.
Bonjour mon code semble juste mais ne fonctionne pas et j'ai toujours un message d'erreur pourquoi ???le 13/10/2017 à 13h55
mram Administrateur
Bonjour, cela vient peut-être de la ligne vide (donc inutile) après "check = true". Le reste de votre code est correct.
le 18/10/2017 à 23h16
arshavin.erding-97
bonjour la correction me dit que j'ai un boucle infini pouvez m'aider s'il vous plait? voici mon code : var check = false; var result; while (!check) { result = parseInt(prompt("entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 07/08/2018 à 12h58
mram Administrateur
Bonjour, votre code est correct, ne tenez pas compte du message.
le 13/08/2018 à 03h56
ts.fabius-98
Bonjour, svp pouvez regarder mon code et me dire où est le problème..j'ai le msg "Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ?"le 13/09/2018 à 14h26
mram Administrateur
Bonjour, à part l'indentation qui pourrait être mieux, oui votre code est correct.
le 15/09/2018 à 07h52
severine.74
@mram merci!le 12/03/2018 à 08h34
ts.fabius-98
et si il ne faut pas tenir compte de l'erreur, le pourcentage de réussite à la fin ne correspondrait alors pas...ou alors je me trompes?le 13/09/2018 à 14h27
mram Administrateur
Oui il ne correspond pas, mais ce n'est pas très grave. Les % sont là pour donner une idée de votre progression.
Nous savons que quelques exercices bug, on en tient compte.
le 15/09/2018 à 07h51
jnicolleau-87
Bonjour mram voilà mon code var result; while (check === false) { result = parseInt(prompt("Ecrivez un nombre en 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 29/05/2018 à 13h30
mram Administrateur
Bonjour, votre code est bien correct.
le 02/06/2018 à 04h31
mram Administrateur
Mais il y a moyen de faire plus simple que "check === false".
le 02/06/2018 à 04h32
amelie.chervier
Bonjour, je reçois le message d'erreur "Avez-vous bien écrit la structure if else ?". Je ne comprend pas pourquoi ... Mon code : var result; while (!check) { result = parseInt(prompt("Entrer un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check=false; } else { check=true; } }le 27/11/2017 à 15h46
mram Administrateur
Bonjour, les accolades de la structure conditionnelle doivent être alignées avec les mots-clés "if / else"
le 28/11/2017 à 14h11
triplaxs
Bonjour pouvez me dire où je me trompe merci d'avance;le 14/08/2017 à 14h29
mram Administrateur
Bonjour, le code est juste mais il doit y avoir des espaces en trop en fin de ligne, notamment après les accolades.
le 17/08/2017 à 15h41
alexismoquet
Bjr, le code marche avec la console mais je ne peux pas valider. Help please.le 16/10/2017 à 13h35
mram Administrateur
Bonjour, les lignes 6 et 8 à 11 doivent avoir une tabulation en plus.
le 19/10/2017 à 00h40
Joany
ces bugs sont super pénibles et perturbent les apprentissages !!!!le 12/10/2018 à 11h57
meriam Administrateur
Bonjour, évitez les espaces inutiles; pas d'espace avant et aprés la fonction prompt(). Indentez votre code;
le 12/10/2018 à 12h37
maxime.orengo
Helllp !!!le 16/10/2017 à 14h34
mram Administrateur
Bonjour, essayez en mettant "check = false" à la place de "!check" .
le 19/10/2017 à 00h46
mainroal-83
Le code ne réagit pas à la validation ! SOS ...le 12/03/2018 à 18h02
mram Administrateur
Bonjour, votre code est correct. Ne tenez pas compte du message ici.
le 16/03/2018 à 04h44
celine.bru.69-2
bonjour, décidément les boucles fonctionnent mal . Impossible de vérifier si mon code est juste . Lorsque je clique sur soumettre rien ne se passe . Est-ce que mon code est juste?le 18/04/2018 à 18h30
mram Administrateur
Bonjour, alors je ne pourrai pas vous dire, dans l'historique je ne vois pas votre code. Vous avez fait des tentatives ?
le 23/04/2018 à 03h34
Lexo
impossible de valider var result; while (!check) { result = parseInt(prompt("Entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 11/06/2018 à 17h43
mram Administrateur
Bonjour, ne tenez pas compte de l'erreur ici, votre code est correct.
le 19/06/2018 à 04h17
patrice-w-36
Bonjour, je n'arrive pas à soumettre ma réponse. Quand je clique il ne se passe rien. Pouvez vous me dire si mon code est correct var result; while (!check) { result = parseInt(prompt("Entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 11/06/2018 à 22h51
mram Administrateur
Bonjour, vous oubliez de déclarer "result" et la condition dans while n'est pas la bonne.
le 19/06/2018 à 04h21
David
Je ne comprend pas mon erreur ! ..le 10/08/2018 à 21h00
mram Administrateur
Quel est votre message d'erreur svp ? Ca sera plus facile pour vous aider.
le 17/08/2018 à 05h47
mg-27
je ne comprends pas à quoi sert isNaN dans cet exercice ?le 21/12/2018 à 10h29
meriam Administrateur
Bonjour, pour vérifier si result est un nombre ou non, vous pouvez utilisez la méthode isNaN (is Not a Number) , pour l'instruction if utilisez l'opérateur logique || (OU) et pas && (ET).
le 21/12/2018 à 10h40
aubert.stanislas.axel-36
Bonjour je ne peux pas soumettre ma réponse ! puis-je avoir de l'aide ?le 19/04/2018 à 15h36
mram Administrateur
Bonjour, votre code est correct. Vous pouvez passer à la suite.
le 23/04/2018 à 03h55
mariegade
Bonjour, je n'arrive pas à valider mon code; d'où viens mon erreur? var result; while (!check) { result = parseInt(prompt("Donnez un chiffre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } } Merci bcple 02/11/2017 à 15h23
mram Administrateur
Bonjour, il y a une tabulation en trop devant la structure if / else .
le 04/11/2017 à 00h05
baptistefort5-93
Bonjour, comme pou certains, impossible de soumettre. Pourriez-vous vérifier mon code s'il vous plaît ?le 15/03/2018 à 18h41
mram Administrateur
Bonjour, je ne vois pas votre code. Vous avez fait plusieurs essais (soumission) ?
le 16/03/2018 à 05h17
nacim_H
Bonjour, quand je soumet ma réponse j'obtiens Erreur(s) : Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ?le 13/08/2018 à 02h33
mram Administrateur
Ce doit être un bug, car votre code est correct.
le 17/08/2018 à 06h01
thibaudfabvre-9
Bonjour, j'ai le même soucis : var result; while (!check) { result = parseInt (prompt("")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } } check = false; } else { check = true; } }le 25/08/2018 à 22h31
mram Administrateur
Bonjour, je confirme que votre code est correct.
le 05/09/2018 à 19h38
bot666
help je pense que mon code est bonle 06/01/2018 à 23h18
mram Administrateur
Bonjour, ajoutez des autour du signe = dans le "if" et le "else".
le 12/01/2018 à 00h59
armand1807
j'ai réussi a le valider graçe aux tabulations que j'ai rajouter mais je ne comprend pas pourquoi il faut le ! avant check ??le 16/08/2017 à 12h54
mram Administrateur
Avec "if(...)" on vérifie automatiquement que l'expression qui est testée est considérée comme "true" (vrai). Si on veut tester le contraire (que l'expression est considérée comme "false") on met "!" devant. Car "!" est une négation à traduire en français par "... n'est pas..." . Dans notre cas on veut vérifier que la valeur n'est pas "vrai" (donc qu'elle est "fausse") .
le 16/08/2017 à 15h08
veronique.nollet
Bonjour, désolée mais je ne vois pas où il me manque des accolades dans ma condition.le 07/05/2018 à 10h18
mram Administrateur
Bonjour, attention à l'indentation du code. Notamment dans la boucle "while".
le 09/05/2018 à 06h28
AnthonyFoxRoze
Bonjour, impossible de valider mon exercice et en connaitre le résultat. Est-ce correct ?le 07/05/2018 à 14h45
mram Administrateur
Bonjour, oui je confirme que votre code est correct :)
le 09/05/2018 à 06h33
duboisdelphine-16
je ne comprends pas où j'ai mal codé : var result while (!check) { result = parseInt(prompt("Entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 26/03/2018 à 08h45
mram Administrateur
Bonjour, votre code est correct, mais il y a moyen de faire plus simple pour la condition dans le "while".
le 28/03/2018 à 06h09
khd69-20
bonjour, j ai le message d erreur suivant : Avez-vous bien écrit la structure de la boucle "while" pour vérifier "check" ? pourtant mon code a l air correct. Et quand je met while (!check) ça me met comme erreur : Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ?, pourtant vous dite a d autre que leur code est correct.le 26/06/2018 à 02h13
mram Administrateur
Bonjour, votre code est correct aussi. C'est l'exercice qui bug ici.
le 28/06/2018 à 03h45
belespoir38
je comprends l'énoncé ainsi : la valeur de check=false. Tant que check=false demander à l'utilisateur de choisir un nombre entre 0 et 10. Si le chiffre choisit n'est pas dans cet interval, il faut recommencer, sinon arrêter. Alors pourquoi ecrire tant que check n'est pas faux (!check) ?le 12/01/2018 à 22h15
mram Administrateur
Bonjour, "while (!check)" signifie "tant que check est faux", et non l'inverse. Et il faut mettre la condition if / else dans la boucle while et non à l'extérieur.
le 16/01/2018 à 19h37
aurelienrousselotpublique-36
Je suppose que vous pouvez voir mon code ? Si oui, je n'arrive pas à valider ? des idées. Merci !le 20/05/2018 à 01h28
mram Administrateur
Bonjour, prompt() était bien écrite avant, là ce n'est plus bon. Le reste du code est correct. Si vous ne pouvez pas valider passez à la suite ce n'est pas gênant.
le 23/05/2018 à 07h07
nathalie.chenparis
Bonjour, après avoir corrigé par rapport à vos conseille, je ne peux pas "Soumettre". var result; while (!check) { parseInt(prompt("Entre un nombre entre 0 et 10")); if (result <= 0 || result >= 10 || isNaN(result)) { check = false; } else { check = true; } }le 20/05/2018 à 16h40
mram Administrateur
Bonjour, attention aux signes de comparaison, ils sont mal écrit.
le 23/05/2018 à 07h16
bernardraphael13
Bonjour pouvez me dire où je me trompe dans la boucle while merci d'avance;le 30/06/2017 à 14h41
mram Administrateur
Bonjour, mettez les accolades 8, 9 , 10 et 11 sur une ligne à part (à la ligne donc).
le 07/07/2017 à 10h53
dilmi.chourouk
le plus énigmatique c'est de savoir s'il manque des espaces ou nonle 24/01/2018 à 15h27
mram Administrateur
Bonjour, en effet, il est prévu que ce genre d'erreurs qui n'en sont pas vraiment ne soient plus en frein à la validation des exercices, mais qu'il y ait juste un avertissement comme quoi le code pourrait être mieux écrit.
le 24/01/2018 à 17h05
doucette.manon
Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ? Mon code me semble correct ...le 06/09/2018 à 10h21
mram Administrateur
Votre code est correct, mais l'indentation pourrait être optimisée.
Ne tenez pas compte de l'erreur ici.
le 10/09/2018 à 04h06
gaetangerard-37
Bonjour est-ce que mon code est correct ? je viens de l'essayer dans mon editeur en déclarant la var check = false comme sur l'énoncer et lorsque je fait un console log du check j'obtient le résultat escompter s'est à dire (true si le résultat est compris entre 0 et 10) mais chaque fois que je valide je peux pas soumettre le code !!! problème technique ou "erreur d'indentation" ?le 21/05/2018 à 21h24
mram Administrateur
Bonjour, oui je confirme que votre code est correct :) Souci technique ici.
le 23/05/2018 à 07h28
ocoffineau-36
Bonjour, le bouton Soumettre ne fonctionne pas. Cela vient-il de mon code ?le 16/03/2018 à 15h47
mram Administrateur
Bonjour, non ça vient de la correction. Votre code est correct.
le 19/03/2018 à 04h37
nathalie.2080
bonsoir,de l'aide svp.merci.le 27/12/2017 à 17h19
mram Administrateur
Bonjour, la dernière accolade doit être alignée avec la première. Et vous avez une ligne vide inutile dans la condition "if".
le 30/12/2017 à 12h40
makamgeorges-42
Bonjour, j'ai l'erreur : "Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ?", mais le code a l'air de fonctionner en testant, pouvez voir si le code est bon?le 29/10/2018 à 17h09
meriam Administrateur
Pas besoin de déclarer la variable check parce qu'elle est déja déclaré, pour la condition vous avez écrit if (result < 0 || result > 10 || isNaN(result)) alors que vous devez écrire :if (result < 0 || result > 10 && isNaN(result)).
le 30/10/2018 à 15h37
baptistefort5-93
Mram : Oui, j'ai même tenté depuis deux ordinateurs différents.le 16/03/2018 à 17h51
mram Administrateur
Ok, dans ce cas passez à l'exercice suivant et ne perdez pas trop de temps. Vous pourrez y revenir par la suite de toute façon.
le 19/03/2018 à 04h45
chandosnay.nicolas-32
var result; while (!check) { result = parseInt(prompt("Entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 02/06/2018 à 11h17
mram Administrateur
Bonjour, votre code est correct. Ne tenez pas compte du message ici.
le 07/06/2018 à 04h23
oshaoner
Mon code semble correct et je ne vois pas mon erreurle 17/12/2017 à 17h13
mram Administrateur
Bonjour, même remarque que pour l'exercice avec "break" . Tout votre code doit se trouver dans la boucle.
le 23/12/2017 à 12h41
vahan.barsamian
mon code fonctionne,les tabulations semblent avoir été respectées....problème de if dans la validations mon code:var result; var check = false; while (!check) { result = parseInt(prompt("Veuillez saisir un chiffre entre 0 et 10")); if (isNaN(result) || result < 0 || result > 10) { check = false; } else { check = true; } }le 26/08/2017 à 08h18
mram Administrateur
Bonjour, non l'indentation n'était pas optimale. Mais dans votre dernier essai du 26/08 oui.
le 30/08/2017 à 13h27
Yz
Bonjour, je ne comprends pas ou se trouve mon erreur, ça m'affiche "Avez-vous bien écrit la structure de la boucle "while" pour vérifier "check" ?", merci.le 06/09/2017 à 19h04
mram Administrateur
Bonjour, votre code daté du 06/09 semblait correct à part le "!" ligne 2 qui doit être collé à la variable à laquelle il s'applique. Je vois que vous l'avez modifié aujourd'hui. Est-ce que ça passe maintenant ?
le 12/09/2017 à 15h39
BisonVoyageur
Bonjour, j'ai le message d'erreur "Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ?" Mon code : var result; while (!check) { result = parseInt(prompt("entrer un nombre entre 0 et 10")); if (isNaN(result) || result < 0 || result >10) { check = false; } else { check = true; } } Je ne vois pas où est l'erreur.le 13/08/2018 à 17h10
mram Administrateur
Bonjour, il doit s'agir d'un bug. Car votre code est correct.
le 17/08/2018 à 06h17
Ajell
Avez-vous bien écrit la structure if else ?le 14/01/2018 à 17h44
mram Administrateur
Bonjour, attention à l'écriture du code et son indentation. Chaque accolade doit être sur une ligne à part.
le 17/01/2018 à 19h39
F-Lepetit-53
Bonjour, lorsque je soumet je n'ai aucun message, ni de validation, ni d'erreur. Mercile 18/03/2018 à 23h39
mram Administrateur
Bonjour, pourquoi mettre deux boucles while ? Une seule suffit.
le 19/03/2018 à 05h23
olivierbretaud-52
Bonjour, je n'arrive pas à soumettre mon code. Est-ce que celui-ci est correct?le 09/05/2018 à 12h13
mram Administrateur
Bonjour, oui votre code est correct :)
le 14/05/2018 à 02h43
corentin.roger
Bonjour, impossible de soumettre mon code, je clique et rien ne se passe.le 05/03/2018 à 08h49
mram Administrateur
Bonjour, avez-vous un message d'erreur au moins ?
le 08/03/2018 à 22h40
DuckPixl
help! je ne comprends pas mon erreur :var check = false; var result; while (!check) {result = parseInt(prompt("Ecrivez un nombre entre 0 et 10")); } if (isNaN(result) || result<0 || result>10) {check = false;} else {check = true;}le 28/06/2018 à 16h50
mram Administrateur
Attention dans votre dernier essai :
> result < 0 && result > 10
result ne peut pas être à la fois inférieur à 0 et supérieur à 10.
le 05/07/2018 à 04h10
evelyne.mazars-64
Bonjour, tout comme BisonVoyageur, j'ai le message d'erreur "Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ?". Je ne vois pas mon erreur. Après relecture attentive et comparaison avec le code de mon/ma camarade, je pense que mon code est bon. Pouvez-vous me le confirmer ?le 29/08/2018 à 10h22
mram Administrateur
Bonjour, oui votre code est correct.
le 06/09/2018 à 06h01
lolululo-22
Bonjour, impossible de valider mon exercice rien ne se passe lorsque j'essaie de cliquer sur "Soumettre" mon exercice.le 05/06/2018 à 19h18
mram Administrateur
Bonjour, je ne vois pas votre code. Pouvez-vous le copier / coller ici ?
le 07/06/2018 à 05h00
ricoarnaud13
var result; while (!check) {result = parseInt(pompt("Entrez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)){check = false;}else{check = true; } } Je n'arrive pas à valider l'exercice. Pouvez vous m'aider svp.le 20/11/2017 à 22h48
mram Administrateur
Bonjour, c'est la fonction prompt() qui était mal écrite. Pas évident à voir en effet.
le 22/11/2017 à 01h16
aureliewagner.v-49
Bonjour, impossible de régler mon problème seule ! Pouvez vous m'éclairer ? merci !le 01/08/2018 à 11h58
mram Administrateur
Bonjour, votre code est correct. C'est la correction qui bug ici.
le 05/08/2018 à 00h09
severine.74
bonjour, je n'arrive pas à valider l'exercice. Lorsque je fais "soumettre" rien ne se passe je n'ai aucun message qui s'affiche...merci d'avance de votre aidele 06/03/2018 à 09h57
mram Administrateur
Bonjour, passez à l'exercice suivant. Je confirme que votre code est correct.
le 12/03/2018 à 00h08
ma.nicolas-46
Bonjour, même erreur que khd69-20, "Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ?" Pouvez-vous jeter un coup d'oeil et me dire si mon code est bon ? Je passe à la suite pour le moment. Mercile 29/06/2018 à 11h43
mram Administrateur
Bonjour, même si la ligne 3 pourrait être simplifiée, le code est correct.
le 05/07/2018 à 04h45
Rae
Bonjour je ne peut pas soumettre ma réponse pouvez m'aiderle 28/04/2018 à 13h09
mram Administrateur
Bonjour, passez à l'exercice suivant dans ce cas.
le 04/05/2018 à 06h42
lj.d
Bonsoir, est-il possible de savoir si mon code est correct ? Merci pour votre réponse.le 10/05/2018 à 18h16
mram Administrateur
Bonjour, il est presque bon. A la fin pas besoin de mettre ! devant "check".
le 14/05/2018 à 03h25
danderhy3
var result; while (!check) { result = parseInt(prompt("donnez un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } } Quel est mon erreur svple 07/07/2017 à 17h47
mram Administrateur
Le code lignes 6 à 12 doit avoir une tabulation en plus. Sinon le code est correct.
le 10/07/2017 à 18h04
nathalie.chenparis
Decidement je ne vais pas y arrivé. Pour le coup je n'arrive pas a Soumettre : var result; while (!check) { parseInt(prompt("Entre un nombre entre 0 et 10")); if (result < 0 || result > 10 || isNaN(result)) { check = false; } else { check = true; } }le 23/05/2018 à 11h07
mram Administrateur
Bonjour, je confirme que votre code est correct. Vous pouvez passer à la suite.
le 28/05/2018 à 04h15
maxence.souvras
Bonjour, mon code est correct (validé par la soumission ?) cependant quand j’exécute quelques "test" je me retrouve dans un boucle infini avec cette "pop-up" qui me demande de rentrer un nombre entre 0 et 10. J'ai d'abord commencé par rentrer 12 et 0.5 pour voir si la fenêtre se relançait mais elle se relance tout le temps même si j'écrit 0 ou 10. C'est normal ?le 09/11/2017 à 05h13
mram Administrateur
Bonjour, non votre code n'est pas correct. Dans le if il faut vérifier si ce que retourne prompt() est bien un nombre et qu'il est supérieur à zéro tout en étant inférieur à 10.
le 11/11/2017 à 14h26
yselim1-13
Bonjour, je parviens à valider mon exercice mais au vu des commentaires je doute de son exactitude. Pourriez-vous y jeter un oeil svp, merci.le 23/05/2018 à 17h23
mram Administrateur
Bonjour, en effet ce n'est pas correct. Car là vous vérifiez juste si "result" est vrai et elle l'est forcément puisqu'elle contient la valeur rentrée via prompt(), mais ici on veut vérifié si ce qu'on a rentré est un nombre entre 0 et 10.
le 28/05/2018 à 04h42
JeanAnx
Bonjour, mon code est-il correct ? Impossible de soumettre malheureusement. Mercile 19/03/2018 à 19h16
mram Administrateur
Bonjour, oui il est correct :)
le 24/03/2018 à 05h11
jeremy.synakowski-82
Bonjour, même problème que pas mal de monde avec ce message d'erreur : Votre script a mis trop de temps à s'exécuter, auriez-vous une boucle infinie ?le 31/08/2018 à 10h01
mram Administrateur
Bonjour, je confirme que votre code est correct.
le 05/09/2018 à 07h20
laila86
Bonsoir cest quoi qui va pas dans mon code?le 31/12/2017 à 01h08
mram Administrateur
Bonjour, c'est l'indentation qui n'était pas optimale. Le code est bien construit sinon.
le 31/12/2017 à 19h17
DuckPixl
pouvez-vous me décrire mon erreur dans mon code SVP ?le 03/07/2018 à 11h30
mram Administrateur
Bonjour, ligne 5 "result" ne peut pas etre à la fois inférieur à 0 ET supérieur à 10.
le 09/07/2018 à 03h07
Lucrèce Renault
Bonsoir, l'exercice est validé si on remplace || par &&, or "result" ne peut pas être à la fois inférieur à 0 et supérieur à 10. (Sans compter que l'exercice m'a aussi été validé en écrivant "result < 10" et "result > 0" ce qui va contre le but de l'exercice... Mais je me suis rendue compte de mon erreur.)le 25/05/2018 à 21h07
mram Administrateur
Bonjour, oui cet exercice est à revoir, merci pour le retour.
le 28/05/2018 à 05h21
hocinesennane-67
bonjour. Le seul exercice que je n'arrive pas a valider parmis les trois langages. Après l'avoir laissé de coté à plusieurs reprises, je retente encore mais je n'arrive toujours pas à le valider. pourriez vous me dire si c'est mon code qui n'est pas correcte ou c'est l'exercice qui beug ? Merci.le 26/10/2018 à 16h45
meriam Administrateur
1:remplacez le || par &&, 2:indentez la ligne4 (doit etre au meme niveau que la structure if pour cela utilisez toujours la touche tabulation).
le 26/10/2018 à 17h04
Raumann
Bonjour, pourriez-vous m'indiquer où est mon erreur svp ? Mercile 20/07/2018 à 14h54
mram Administrateur
Bonjour, à part des lignes vides inutiles je ne vois pas d'erreur.
le 01/08/2018 à 05h35
sere-97
merci pzim-34 ca marche !le 22/11/2019 à 16h50
valerie.major-59
Merci. je viens enfin de comprendre.le 15/03/2019 à 11h31
david.soutarson.pro
if (result < 0 && result > 10 && isNaN(result))l'exercice est validéle 08/10/2018 à 14h04
pzim-34
Celui la fonctionne : var check = false; var result; while(check === false) { result = parseInt(prompt("Entrez un nombre entre 0 et 10 :")); if(isNaN(result) || result > 10 || result < 0) { check = false; } else { check = true; } }le 23/03/2019 à 00h05
anthonynezri-1
merci, j'ai compris mon erreur, j'ai pu valider l'exercicele 05/03/2019 à 20h41
freynaut-92
Finalement j'ai pu valider l'exercice.le 29/10/2018 à 18h30
sere-97
merci pzim-34 ca marche !le 22/11/2019 à 16h50
A ceux qui ne réussissent pas à valider l'exercice, il faut que le tout le code soit compris dans la boucle, y compris le var result;