0% ont trouvé ce document utile (0 vote)
0 vues4 pages

Correction Devoir JavaScript INGT

Le document fournit la correction d'un devoir de JavaScript pour des étudiants en première année d'ingénieur, incluant un QCM et des exercices pratiques. Chaque question du QCM est accompagnée de la réponse correcte et d'une explication concise. Les exercices corrigés portent sur le calcul de tarifs cinématographiques et la manipulation dynamique du DOM.

Transféré par

h264swrgfz
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
0 vues4 pages

Correction Devoir JavaScript INGT

Le document fournit la correction d'un devoir de JavaScript pour des étudiants en première année d'ingénieur, incluant un QCM et des exercices pratiques. Chaque question du QCM est accompagnée de la réponse correcte et d'une explication concise. Les exercices corrigés portent sur le calcul de tarifs cinématographiques et la manipulation dynamique du DOM.

Transféré par

h264swrgfz
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

CORRECTION OFFICIELLE DU DEVOIR

JavaScript — 1ère année ingénieur (INGT)

Partie A : Correction du QCM (14 points)

Question 1 : Syntaxe de variable non réassignable


Réponse correcte : C) const x = 10;
Explication : const verrouille la liaison de la variable et interdit toute nouvelle assignation directe.

Question 2 : Commentaire sur une seule ligne


Réponse correcte : B) // Ceci est un commentaire
Explication : Le double slash // introduit un commentaire de fin de ligne en JavaScript.

Question 3 : Sélection par ID dans le DOM


Réponse correcte : C) [Link]()
Explication : getElementById recherche un ID unique, de manière performante et ciblée.

Question 4 : Résultat de typeof "42"


Réponse correcte : B) "string"
Explication : Les guillemets entourent la valeur, qualifiant ainsi la donnée de chaîne de caractères.

Question 5 : Appel correct d'une fonction


Réponse correcte : B) maFonction()
Explication : L'opérateur d'invocation constitué des parenthèses permet de déclencher la fonction.

Question 6 : Condition d'égalité stricte


Réponse correcte : C) if (x === 5)
Explication : Le triple égal vérifie sans coercition la valeur et le type. Les parenthèses sont requises autour de la
condition du if.

Question 7 : Boucle pour nombre d'itérations déterminé


Réponse correcte : B) la boucle for
Explication : Elle intègre l'initialisation, le test de continuation et l'incrément, parfaite pour un compteur fixe.

Question 8 : Événement au clic de souris


Réponse correcte : C) onclick
Explication : onclick intercepte le déclenchement de l'action de clic utilisateur.

Question 9 : Déclaration d'un tableau vide


Réponse correcte : B) let t = [];
Explication : Les crochets représentent la syntaxe littérale préférentielle pour instancier un tableau vide.

Page 1 / 4
Question 10 : Ajouter un élément en fin de tableau
Réponse correcte : A) [Link]()
Explication : push() insère un ou plusieurs éléments au bout du tableau et retourne sa nouvelle longueur.

Question 11 : Valeur de l'expression (true && false)


Réponse correcte : B) false
Explication : L'opérateur ET exige que toutes les composantes soient vraies pour donner un résultat true.

Question 12 : Convertir en nombre entier


Réponse correcte : A) parseInt()
Explication : Elle analyse une chaîne et en extrait l'entier initial correspondant à la base numérique.

Question 13 : Modifier le contenu textuel d'un nœud


Réponse correcte : C) [Link] = "Texte";
Explication : textContent met à jour ou lit proprement le texte brut situé au sein d'une balise sans évaluer
d'HTML.

Question 14 : Élément HTML d'inclusion JS


Réponse correcte : B) <script>
Explication : La balise <script> est l'élément normé servant à embarquer ou lier du code JavaScript.

Question 15 : Retourner une valeur de fonction


Réponse correcte : C) return
Explication : return stoppe l'exécution de la fonction et transmet le résultat indiqué à l'appelant.

Question 16 : Résultat de [Link](1 + "2");


Réponse correcte : B) "12"
Explication : La présence d'une String induit une coercition et une opération globale de concaténation textuelle.

Question 17 : Boucle s'exécutant au moins une fois


Réponse correcte : C) do...while
Explication : Le code s'exécute une première fois obligatoirement avant que la condition ne soit examinée.

Question 18 : Inégalité stricte


Réponse correcte : B) x !== y
Explication : !== valide la non-égalité sur la valeur ou sur le type de manière stricte.

Question 19 : Supprimer le dernier élément d'un tableau


Réponse correcte : B) [Link]()
Explication : pop() ampute le tableau de sa valeur finale et retourne cet élément retiré.

Question 20 : Objet d'outils mathématiques


Réponse correcte : B) Math
Explication : Math (avec majuscule) regroupe les fonctions numériques classiques et constantes fondamentales.

Page 2 / 4
Question 21 : Résultat de [Link](4.6)
Réponse correcte : B) 5
Explication : round effectue l'arrondi arithmétique vers l'entier le plus proche. 4.6 passe donc à 5.

Question 22 : Premier élément d'un tableau


Réponse correcte : B) notes[0]
Explication : L'indexation des tableaux commence rigoureusement à l'indice 0 en JavaScript.

Question 23 : Propriété de comptage de tableau


Réponse correcte : C) [Link]
Explication : length contient dynamiquement le compte d'éléments indexés du tableau.

Question 24 : Attribut pour lier un script externe


Réponse correcte : B) <script src="[Link]"></script>
Explication : L'attribut src désigne la source du fichier de scripts à charger.

Question 25 : Signification de DOM


Réponse correcte : A) Document Object Model
Explication : C'est le nom officiel de la structure d'arbre modélisant le balisage HTML.

Question 26 : Fenêtre d'invite de saisie textuelle


Réponse correcte : C) prompt()
Explication : prompt() présente un champ de texte libre et renvoie la saisie de l'internaute.

Question 27 : Fonction anonyme assignée


Réponse correcte : A) let f = function() { };
Explication : Il s'agit d'une affectation standard d'une expression de fonction dépourvue de nom propre.

Question 28 : Opérateur de concaténation de chaînes


Réponse correcte : B) l'opérateur +
Explication : Le signe plus fusionne bout à bout les opérandes dès qu'un élément texte est engagé.

Page 3 / 4
Partie B : Correction des Exercices (6 points)

Correction de l'Exercice 1 : Algorithme de calcul de tarif cinématographique (3pts)

function calculerTarif(age, estEtudiant) {


let tarif = 10; // Tarif de base par défaut

if (age < 12) {


tarif = 5; // Remise enfant de moins de 12 ans
} else if (estEtudiant === true) {
tarif = 7; // Tarif étudiant si non concerné par la première condition
}

return tarif; // Renvoi du résultat final


}

Correction de l'Exercice 2 : Script de manipulation dynamique du DOM (3pts)

// 1. Sélection des éléments requis dans le DOM


const h1Affichage = [Link]("affichage");
const boutonIncrementer = [Link]("btn-incrementer");

// 2. Déclaration de la variable de suivi numérique


let compteur = 0;

// 3. Mise en place de l'écouteur d'événement au clic


[Link]("click", function() {
compteur = compteur + 1; // Incrémentation
[Link] = compteur; // Mise à jour de l'affichage HTML
});

Page 4 / 4

Vous aimerez peut-être aussi