Exercice JavaScript Corrigé – Partie 3

Avec des exercices corrigés en JavaScript, vous pratiquerez divers concepts du langage JavaScript. Vous commencerez par des exercices JavaScript de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
 
 

Exercice 1:

Créez une fonction JavaScript qui vérifie si deux paramètres a et b sont strictement égaux.

La fonction doit vérifier :

  • La valeur des deux paramètres.
  • Le type des deux paramètres.

Elle doit retourner true si les deux paramètres ont la même valeur et le même type, sinon elle retourne false.

Exemple:

checkEq(5, 5) ➞ true
// number = number : même type et même valeur

checkEq(5, 0) ➞ false
// number = number : même type, mais valeurs différentes

checkEq(5, false) ➞ false
// number ≠ boolean : types différents

checkEq(5, "5") ➞ false
// number ≠ string : types différents
// Définir une fonction qui prend deux paramètres
function checkEq(a, b) {

    // Vérifier si les deux paramètres ont
    // le même type et la même valeur
    return a === b;
}

// Tester la fonction
console.log(checkEq(5, 5));
console.log(checkEq(5, 0));
console.log(checkEq(5, false));
console.log(checkEq(5, "5"));
 

Exercice 2:

Créez une fonction JavaScript qui prend une chaîne de caractères en paramètre et retourne true si la chaîne est vide. Sinon, elle retourne false.

Exemple:

isEmpty("1")           ➞ false
isEmpty("WayToLearnX") ➞ false
isEmpty("  ")          ➞ false
isEmpty("")            ➞ true
// Définir une fonction qui prend une chaîne de caractères en paramètre
function isEmpty(str) {

    // Vérifier si la longueur de la chaîne est égale à 0
    return str.length === 0;
}

// Tester la fonction
console.log(isEmpty("1"));
console.log(isEmpty("WayToLearnX"));
console.log(isEmpty("  "));
console.log(isEmpty(""));
 

Exercice 3: Concaténer deux chaînes en une seule chaîne

Créez une fonction JavaScript qui prend deux chaînes de caractères str1 et str2 en paramètres et retourne une seule chaîne au format « str1 | str2 ».

Exemple:

concatStr("True", "False") ➞ "True | False"
concatStr("On", "Off") ➞ "On | Off"
concatStr("A", "B") ➞ "A | B"
// Définir une fonction qui prend deux chaînes en paramètres
function concatStr(str1, str2) {

    // Concaténer les deux chaînes avec " | " entre elles
    return `${str1} | ${str2}`;
}

// Tester la fonction
console.log(concatStr("True", "False"));
console.log(concatStr("On", "Off"));
console.log(concatStr("A", "B"));
 
 

Exercice 4:

Créez une fonction qui prend un nom et renvoie un message d’accueil sous la forme d’une chaîne. N’utilisez pas une fonction normale mais utilisez une fonction fléchée(Arrow)

Exemple:

msg("Thomas") ➞ "Hello Thomas, Welcome to WayToLearnX!"
msg("Alex") ➞ "Hello Alex, Welcome to WayToLearnX!"
msg("Emily") ➞ "Hello Emily, Welcome to WayToLearnX!"
// Définir une fonction fléchée qui prend un nom en paramètre
const msg = name => {

    // Retourner le message d'accueil
    return `Hello ${name}, Welcome to WayToLearnX!`;
};

// Tester la fonction
console.log(msg("Thomas"));
console.log(msg("Alex"));
console.log(msg("Emily"));
 

Exercice 5:

Écrivez une fonction JavaScript qui retourne la longueur d’une chaîne de caractères en utilisant une fonction récursive.

Exemple:

size("alex") ➞ 4
size("x")    ➞ 1
size("")     ➞ 0
// Définir une fonction récursive qui prend une chaîne
// et un index initialisé à 0
function size(str, n = 0) {

    // Vérifier si aucun caractère n'existe à l'index actuel
    if (str[n] === undefined) {

       // Retourner l'index, qui correspond à la longueur du chaîne
       return n;
    }

    // Appeler la fonction avec l'index suivant
    return size(str, n + 1);
}

// Tester la fonction
console.log(size("alex"));
console.log(size("x"));
console.log(size(""));
 

Exercice 6:

Créez une fonction JavaScript qui prend deux chaînes str1 et str2 en paramètres et retourne true si les deux chaînes ont le même nombre de caractères. Sinon, elle retourne false.

Exemple:

compareSize("AA", "BB") ➞ true
compareSize("123", "1") ➞ false
compareSize("Ali", "Bob") ➞ true
// Définir une fonction qui prend deux chaînes en paramètres
function compareSize(str1, str2) {

    // Comparer la longueur des deux chaînes
    return str1.length === str2.length;
}

// Tester la fonction
console.log(compareSize("AA", "BB"));
console.log(compareSize("123", "1"));
console.log(compareSize("Ali", "Bob"));
 
 

Exercice 7:

Créez une fonction JavaScript qui prend la hauteur et la largeur d’un rectangle en paramètres et retourne son périmètre.

Exemple:

getPerimeter(2, 6) ➞ 16
getPerimeter(3, 10) ➞ 26
getPerimeter(1, 5) ➞ 12
La formule pour calculer le périmètre d’un rectangle est (hauteur + largeur) * 2
// Définir une fonction qui prend la hauteur et la largeur
// du rectangle en paramètres
function getPerimeter(height, width) {

    // Calculer et retourner le périmètre du rectangle
    return (height + width) * 2;
}

// Tester la fonction
console.log(getPerimeter(2, 6));
console.log(getPerimeter(3, 10));
console.log(getPerimeter(1, 5));
 

Exercice 8: Le problème du fermier

Dans ce défi, un fermier vous demande de lui dire combien de pattes peuvent être comptées parmi tous ses animaux. Il y a trois espèces:

  • poulets = 2 pattes
  • vaches = 4 pattes
  • chevaux = 4 pattes

Le fermier a compté ses animaux et il vous donne un sous-total pour chaque espèce. Vous devez implémenter une fonction qui renvoie le nombre total de pattes de tous les animaux.

L’ordre des animaux transmis à la fonction est nbrsPattes(poulets, vaches, chevaux).

Exemple:

nbrsPattes(1, 4, 2) ➞ 26
nbrsPattes(2, 2, 2) ➞ 20
nbrsPattes(2, 0, 3) ➞ 16

N’oubliez pas que le fermier veut connaître le nombre total de pattes et non pas le nombre total d’animaux.

// Définir une fonction qui prend le nombre de poulets,
// de vaches et de chevaux en paramètres
function nbrsPattes(poulets, vaches, chevaux) {

    // Calculer le nombre de pattes des poulets
    let pattesPoulets = poulets * 2;

    // Calculer le nombre de pattes des vaches
    let pattesVaches = vaches * 4;

    // Calculer le nombre de pattes des chevaux
    let pattesChevaux = chevaux * 4;

    // Retourner le nombre total de pattes
    return pattesPoulets + pattesVaches + pattesChevaux;
}

// Tester la fonction
console.log(nbrsPattes(1, 4, 2));
console.log(nbrsPattes(2, 2, 2));
console.log(nbrsPattes(2, 0, 3));
 

Exercice 9: Nombre paire ou impaire

Créez une fonction JavaScript qui prend un nombre en argument et retourne :

  • « pair » si le nombre est pair ;
  • « impair » si le nombre est impair.

Exemple:

check(2) ➞ "pair"
check(7) ➞ "impair"
check(22) ➞ "pair"
// Définir une fonction qui prend un nombre en paramètre
function check(n) {

    // Si le reste de la division par 2 est égal à 0,
    // le nombre est pair. Sinon, il est impair.
    return n % 2 === 0 ? "pair" : "impair";
}

// Tester la fonction
console.log(check(2));
console.log(check(7));
console.log(check(22));
qcm-javascript

Une réflexion sur “Exercice JavaScript Corrigé – Partie 3

  • janvier 6, 2022 à 12:28 pm
    Permalien

    il faut remplacer la variable « num » par « n » à l’exercice 5, car num n’est pas déclarée.

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *