Exercice 6/6

Soit les variables var1 et var2 qui contiennent chacune du texte identique au début puis qui diffère (les chaînes sont de même longueur).

Dans le fichier "script.js" :

  • écrivez une structure while;
  • tant que les 2 caractères comparés sont identiques incrémentez i (voir l'astuce);
  • après la boucle, affichez simplement i avec alert(). La valeur contenue sera la position à partie de laquelle les chaînes sont différentes.
  • cliquez sur "Soumettre ma réponse".

Leçon 6/6

Exercice de rappel dans lequel il faut écrire un script qui compare deux chaînes lettre par lettre et récupère la position à partir de laquelle les chaînes diffèrent.

Pour comparer les deux caractères en cours, il suffit de vérifier leur égalité ainsi :

chaine1.charAt(i) == chaine2.charAt(i);

Commentaires les mieux notés

66 Commentaires

  • caillarda-67

    caillarda-67

    bonjour, pouvez vous maider ? var var1 = 'abcdefghijklmnopqrstuvwxyz'; var var2 = 'abcdefghijklmn123456789ABC'; var i = 0; while (var1.charAt(i)==var2.charAt(i)) {;i++;} alert(i);

    le 03/11/2021 à 09h18

  • meriam

    meriam Admin

    même remarque que l'exercice précédent.

    le 08/11/2021 à 21h51

  • bilismira-75

    bilismira-75

    Bonjour, où est-ce que je dois rajouter un point-virgule exactement?

    le 23/07/2021 à 08h47

  • meriam

    meriam Admin

    Bonjour, il faut ajouter les points virgule aprés chaque instruction, mais pas aprés la condition d'une boucle ou d'une structure conditionnelle.

    le 26/07/2021 à 09h35

  • bilismira-75

    bilismira-75

    Bonjour, pouvez -vous m'aider svp. je suis bloqué

    le 20/07/2021 à 07h02

  • meriam

    meriam Admin

    Bonjour, il faut pas ajouter un point-virgule aptrés la condition d'une boucle.

    le 22/07/2021 à 10h19

  • mickael5993-78

    mickael5993-78

    bonsoir je ne comprend pas mon erreur "Vous pouvez modifier le contenu des variables var1 et var2 mais pas leur nom" code : var i = 0; while (var1.charAt(i) == var2.charAt(i)) i++;} alert(i)

    le 19/02/2021 à 13h52

  • meriam

    meriam Admin

    Bonjour, la condition de la boucle while doit être avant l'accolade ouvrante.

    le 19/02/2021 à 13h53

  • fred.glemeau94-21

    fred.glemeau94-21

    bonjour , miriam quelle est l'erreur dans mon code ?

    le 18/02/2021 à 14h54

  • meriam

    meriam Admin

    Bonjour, vous devez corriger la condition de la boucle while ==> utilisez l'index i au lieu de n. Vous devez incrémenter i à l'intérieur de la boucle.

    le 19/02/2021 à 10h05

  • stephane.rodriguez777-81

    stephane.rodriguez777-81

    Bonjour, pouvez valider mon code, merci.

    le 11/02/2021 à 12h54

  • meriam

    meriam Admin

    Bonjour, il faut supprimer le point virgule ; avant et aprés l'accolade ouvrante de la boucle while .

    le 11/02/2021 à 14h22

  • nkeshimanabrice-37

    nkeshimanabrice-37

    pouvez-vous corriger...

    le 10/12/2018 à 14h55

  • meriam

    meriam Admin

    Utiliser == pour faire la comparaison des caractères( var1.charAt(i) == var2.charAt(i)), le signe = pour faire l'affectation , == pour vérifier si les deux varaibles ont la meme valeur , et === pour vérifier si les variables ont la meme valeur et le meme type).

    le 11/12/2018 à 07h45

  • ets_raphael-59

    ets_raphael-59

    Je ne comprends pas pourquoi le miens ne marche pas pourtant tout y est..

    le 26/07/2018 à 19h06

  • mram

    mram Admin

    Peut-être un espace après "while" ? A tester ...

    le 02/08/2018 à 01h04

  • yselim1-13

    yselim1-13

    Incompréhensible, toujours impossible de valider cet exercice comme les précedents. Voilà le message qu'il m'affiche : Vérifiez la structure de la boucle while. Avez-vous bien incrémenté "i" dans la boucle ?,Avez-vous bien affiché "i" avec alert() ? Pourriez-vous valider mes exercices afin que je puisse continuer en toute sérénité svp ? Merci

    le 24/06/2018 à 20h57

  • mram

    mram Admin

    Il faut mettre alert() en dehors de la boucle, car on souhaite afficher une fois que la boucle à fini de s'exécuter.

    le 27/06/2018 à 23h32

  • lolululo-22

    lolululo-22

    bonjour, je ne comprends pas mon erreur. var i = 0; while (var1.charAt(i) == var2.charAt(i)) { i++; } alert(i);. Quand je clique sur soumettre, il m'affiche "Vérifiez la structure de la boucle while. Avez-vous bien incrémenté "i" dans la boucle ?".

    le 05/06/2018 à 12h48

  • mram

    mram Admin

    Bonjour, attention aux espaces inutiles en fin de ligne. Le code lui-même est correct.

    le 07/06/2018 à 00h59

  • nathalie.chenparis

    nathalie.chenparis

    Bonjour, ne faite pas attention a mon précedent commentaire, j'ai saisie (j'ai mal lu l'énoncé) merci quand meme !

    le 14/05/2018 à 08h14

  • veronique.nollet

    veronique.nollet

    Bonjour, j'ai le message suivant : Unexpected token { je ne vois pas : var i = 0; while (var1.charAt(i) == var2.charAt(i) { i++; } alert(i);

    le 17/04/2018 à 17h00

  • mram

    mram Admin

    Bonjour, il manque une parenthèse ) ligne 2.

    le 18/04/2018 à 01h17

  • charlotte.pupet34-92

    charlotte.pupet34-92

    je vois pas mon erreur ici : var i = 0; while(var1.charAt(i) == var2.charAt(i)) { i++; } alert(i)

    le 24/03/2018 à 21h26

  • mram

    mram Admin

    Bonjour, ajoutez juste un espace après "while" et ça devrait être bon.

    le 28/03/2018 à 01h58

  • djalloh2016-72

    djalloh2016-72

    Bonjour tout le monde une petite précision:retenez une fois pour toute votre vie on ne met jamais un";" à la fin de la condition while(),for() ou if() car ce sont pas des instructions c'est seulement à l'intérieur des accolades qu'on met les ";" normalement pour celui qui n'a sauter aucun exo devrait qu'à même comprendre cela ce que je dis là est valable pour tous les langages de programmations

    le 27/02/2018 à 16h40

  • m.benamara94

    m.benamara94

    Bonjour, quel est mon erreur ? var i = 0; while (var1.charAt(i) == var2.charAt(i)); { i++; } alert(i);

    le 07/01/2018 à 19h53

  • mram

    mram Admin

    Bonjour, il ne faut jamais mettre de " ; " au niveau d'une structure de contrôle (while, for, if, else ... ).

    le 11/01/2018 à 23h31

index.html
script.js
<!DOCTYPE HTML> <html> <head> <title>Exercice rappel 6</title> <script src="script.js"></script> </head> <body> </body> </html>
/* Vous pouvez modifier le contenu des variables */ var var1 = 'abcdefghijklmnopqrstuvwxyz'; var var2 = 'abcdefghijklmn123456789ABC'; var i = 0; /* Votre boucle ici */ alert(i);