Exercice 13/31
Soit la variable tableau
qui contient un tableau avec des noms de villes.
Dans le fichier "script.js"
:
- déclarez les variables
i
etlongueur
; - affectez la longueur de
tableau
àlongueur
; - écrivez une boucle
for
comme dans la description de l'exercice; - utilisez
alert()
pour afficher chaque élément du tableau; - cliquez sur "Soumettre ma réponse".
Leçon 13/31
Dans cet exercice, vous allez parcourir un tableau en utilisant une boucle.
Quelle type de boucle utiliser ?
Les boucles while
et for
permettent de parcourir un tableau. Mais la boucle for
semble plus logique à utiliser.
La boucle for
utilise forcément un itérateur (le i++
) et c'est avec cet itérateur que l'on va parcourir le tableau.
Exemple :
var tableau = ['banane','fraise','pomme'];
var i;
var longueur = tableau.length; // On récupère la longueur une fois pour toute ici car la longueur ne changera pas.
for (i = 0; i < longueur; i++)
{
alert(tableau[i]);
}
Dans l'exemple, la boucle affiche l'élément du tableau dont l'index (et donc la position dans le tableau) correspond à i
, et ce tant que i
est inférieur à la longueur du tableau (et donc au nombre d'éléments contenus dedans).
Ici le tableau a une longueur de 3 (car trois éléments), comme i
par de zéro pour correspondre à l'index du premier élément, il suffit d'indiquer strictement inférieur à la longueur du tableau.
La boucle fera donc trois itérations avec i = 0, i= 1, i = 2.
42 Commentaires
-
joelmativat-94
mais c'est du grand n'importe quoi ce truc !! J'ai juste placé mon "var i" tout en haut, au dessus de "var tableau" (avec Alt + flèche du haut) et tout fonctionne o.O Pfff. n'importe quoile 08/06/2022 à 11h29
-
joelmativat-94
je comprends pas, j'ai essayé de déclarer la variable après la variable longueur (mon 1er message d'hier) vous m'avez répondu "vous devez déclarer la variable i avec le mot clé clé var au moment de la création de la boucle for." ce que j'avais déjà tenté. sinon, peut-être que j'ai mal compris ce qu'il faut fairele 08/06/2022 à 11h25
-
meriam Admin
Bonjour, votre code fonctionne correctement.
le 13/06/2022 à 10h49
-
joelmativat-94
Bonjour Meriem, j'avais essayé comme ca aussi : for (var i = 0; i < longueur; i++); Mais la il me dit que je n'ai "pas déclaré la variable i". Pourtant ca fonctionne, quand j'active le JSle 08/06/2022 à 09h30
-
meriam Admin
Bonjour, il faut que vous supprimer le point-virgule que avez placé aprés la condition de la boucle for.
le 08/06/2022 à 11h01
-
meriam Admin
Pour i, d'aprés l'énoncé il faut déclarer cette variable aprés la déclaration de longueur.
le 08/06/2022 à 11h03
-
joelmativat-94
Bonjour Meriam, peux tu m'aider stp ? il me dit "le corps de la boucle doit comporter une instruction" var longueur = tableau.length; var i; for(i = 0; i<longueur; i++); { alert(tableau[i]); }le 07/06/2022 à 17h23
-
meriam Admin
Bonjour joel, vous devez déclarer la variable i avec le mot clé clé var au moment de la création de la boucle for.
le 07/06/2022 à 18h52
-
abdo7219
Bonjour ca ne marche pas avec mon code portant il est correcte var tableau = ['paris', 'tokyo', 'strasbourg']; var i; var longueur = tableau.length; for (i = 0; i < longueur; i++); {alert(tableau[i]);}le 13/04/2022 à 11h00
-
meriam Admin
Bonjour, déclarez la variable i avec le mot clé var au moment de la création de la boucle.
le 14/04/2022 à 12h51
-
aoudeche.amina1-26
Bonjour, je ne trouves pas mon erreur pouvez-vous m’aider svple 30/03/2022 à 16h59
-
meriam Admin
Au niveau de la 2ème ligne, il faut supprimer le signe = ==> remplacez var i = ; par var i ;
le 05/04/2022 à 19h35
-
layediole88-29
Mon code: var i=0,longueur=tableau.length-1; for(i=0; i<=longueur; i++) { alert(tableau[i]);}le 11/12/2021 à 16h41
-
meriam Admin
var tableau = ['paris', 'tokyo', 'strasbourg'] var i; var longueur = tableau.length;// On récupère la longueur une fois pour toute ici car la longueur ne changera pas. for (i = 0; i < longueur; i++) { alert(tableau[i]);}
le 13/12/2021 à 13h13
-
layediole88-29
Pourquoi vous ne mettez pas pour longueur, longueur=tableau.length-1; ?? Vous mettez juste longueur=tableau.length;le 11/12/2021 à 16h37
-
meriam Admin
Bonjour, pour récupérer la longueur d'un tableau ==> nom-tableau.length
le 13/12/2021 à 13h11
-
meriam Admin
Pour récupérer le contenu du dernier élément d'un tableau ==> nom-tableau[length-1]
le 13/12/2021 à 13h12
-
Tiphaine.juquel-27
Bonjour, j'ai un soucis au niveau du code. ça m'a l'air correcte, mais pourtant il m'indique une erreur mais je ne vois pas laquelle.le 28/11/2021 à 14h12
-
meriam Admin
Bonjour, au niveau de la déclaration de la boucle, il faut séparer les conditions par un point-virgule ;
le 29/11/2021 à 00h04
-
nad-51
Toujours le message : Boucle Infiniele 01/10/2021 à 12h53
-
meriam Admin
Bonjour, remplacer ce code #123; avec l'accolade ouvrante.
le 01/10/2021 à 15h18
-
stephane.rodriguez777-81
Autant pour moi !!le 11/02/2021 à 16h15
-
stephane.rodriguez777-81
Bonjour, j'ai supprimé le point-virgule après l'accolade mais je n'arrive toujours pas à le valider.le 11/02/2021 à 12h47
-
meriam Admin
Bonjour, le point virgule existe encore.
le 11/02/2021 à 14h16
-
stephane.rodriguez777-81
Bonjour, pouvez m'aidez car mon code fonctionne mais je n'arrive pas à le valider.le 10/02/2021 à 11h34
-
meriam Admin
Bonjour, il faut supprimer le point virgule ; aprés l'accolade ouvrante de la boucle for .
le 10/02/2021 à 14h16
-
sbrahimcode-99
Je ne comprend pas mon code est valide alors qu'il ne le devrait pas pour moi. la reponse de alert est paris, sauf que je devrais avoir les 3 villes si i doit etre de la valeur de longueur... : var tableau = ['paris', 'tokyo', 'strasbourg'] var longueur = tableau.length var i for (i=0; i < longueur; i++) { alert(tableau[i]); }le 22/01/2021 à 15h58
-
meriam Admin
Il faut cliquer sur le bouton ok pour passer à la ville suivante.
le 22/01/2021 à 21h01
-
alan.perreira-37
Bonjour, vous pouvez me dire ou est mon erreur car j'ai pas l'impression de m'être trompé mon code : var i; var longueur = tableau.length; for (i = 0; i < longueur; i++) { alert(tableau[i]); }le 08/08/2018 à 11h48
-
mram Admin
Bonjour, quel message d'erreur avez-vous exactement ?
le 13/08/2018 à 00h13
Commentaires les mieux notés