Quizz Javascript et .html

Résolu
bonjour j'essaye actuellement de faire un quizz pour un TP qu'un professeur ma donné.
je suis debutant et voila se que j'ai commencer a faire. je suis sur un echec pour le moment.
HTML
<section class=GT>
<h2>Description :</h2>
<p class=GT2> <!-- balise pour rédiger un paragraphe -->
 Ce Quizz est realiser pendant la 3eme partie du cour d'ICN
</br>
<form>
<div class="blocQuizz" > <!-- Début du bloc -->
<div class="question" >
Question 1 : 41-27 est egale a ?
</br>
</br>
<input name="q1" value="0" type="radio" /> 4
</br>
<input name="q1" value="0" type="radio" /> 68
</br>
<input name="q1" value="1" type="radio" /> 14
</div> <!-- Fin du bloc pour la question 1 -->
</br>
<div class="question" > 
Question 2 : 11*51 est egale a ?
</br>
</br>
<input name="q2" value="1" type="radio" /> 561
</br>
<input name="q2" value="0" type="radio" /> 511
</br>
<input name="q2" value="0" type="radio" /> 516
</div>
</br>
<div class="question" >
Question 3 : 0.1,-0.1,0.05 lequel est le plus proche de 0 ?
</br>
</br>
<input name="q3" value="0" type="radio" /> 0.1
</br>
<input name="q3" value="0" type="radio" /> -0.1
</br>
<input name="q3" value="1" type="radio" /> 0.05
</div> 
</br>
<div class="question" > 
Question 4 : Le singe habite t'il en france ?
</br>
</br>
<input name="q4" value="0" type="radio" /> oui
</br>
<input name="q4" value="1" type="radio" /> non
</br>
<input name="q4" value="1" type="radio" /> peut etre dans les zoo
</div>
</form>
</br>
<input class="boutton" value="valider" type="button" onclick="verification()" /> 
</p
</section>

JS
function verification() /* Fonction qui compte le nombre de bonnes réponses */ 
 { 
var somme=0; /* On initialise la variable somme à 0 */ 
var nombreDeQuestions=4; /* Nombre total de questions dans le quizz */ 
for (var question=1; question<=nombreDeQuestions; question++) 
 {  
var tableauDeQuestions = document.forms['quiz'].elements['q'+question]; 
for (var i=0; i<tableauDeQuestions.length; i++) 
 { 
if (tableauDeQuestions[i].checked && tableauDeQuestions[i].value=="1") 
 { 
somme++; /* On augmente la somme de 1 */ 
   } 
  } 
 } 
 alert("Vous avez "+somme+" bonnes réponses sur "+nombreDeQuestions);
}

la partie du code javascript c'est le professeur qui nous la donné et je ne comprend pas dutout
y a t'il moyen de m'aidé ? merci d'avance

3 réponses

  1. Salut, tu as oublié de nommé ton formulaire "quiz" :)

    <form name="quiz">

    Il faut aussi revoir ton code html, c'est pas très propre ;)

    2
    1. Modérateur
      Bonjour,

      En complément de la réponse de stéphane :

      Qu'est-ce que tu ne comprends pas au juste ?

      var qqchose sert à déclarer une variable
      var i = 10; // initialisation de la variable i avec la valeur 10
      

      if ... pour faire un test ( se traduit par " SI... " en français )
      if(i == 10 ){
       // si la variable i vaut 10 ... alors
        alert(" i vaut 10 ! ");
      }
      

      for( pour faire une boucle ( de tant à tant ... )
      exemple :
      for(var i=0; i<=10;i++){
         //boucle de 0 à 10
        console.log("i = " + i);
      }
      


       tableauDeQuestions = document.forms['quiz'].elements['q'+question]
      

      Récupère la valeur de l'élément du formulaire ayant comme nom q + un chiffre et le stocke dans la variable tableauDeQuestions
      Voir plus d'infos sur forms.elements https://www.w3schools.com/jsref/coll_form_elements.asp

      somme++ : le ++ sert à incrémenter
      Comme indiqué dans le commentaire du code ... ajoute 1 à la variable somme

      1
      1. merci beaucoups de vos reponse j'ai compris mon erreur et aussi compris en partie le langague Javascript
        Cordialement
        0