📝 Exercices JavaScript

Pratiquez et améliorez vos compétences en JavaScript

1

Calculatrice Simple

Facile
Créez une fonction calculer(a, b, operation) qui prend deux nombres et une opération (+, -, *, /) et retourne le résultat.
// Exemple d'utilisation : console.log(calculer(10, 5, '+')); // 15 console.log(calculer(10, 5, '-')); // 5 console.log(calculer(10, 5, '*')); // 50 console.log(calculer(10, 5, '/')); // 2
💡 Indice : Utilisez une structure switch ou if/else pour gérer les différentes opérations.
function calculer(a, b, operation) {
    switch(operation) {
        case '+':
            return a + b;
        case '-':
            return a - b;
        case '*':
            return a * b;
        case '/':
            return a / b;
        default:
            return 'Opération invalide';
    }
}

// Tests
console.log(calculer(10, 5, '+')); // 15
console.log(calculer(10, 5, '-')); // 5
console.log(calculer(10, 5, '*')); // 50
console.log(calculer(10, 5, '/')); // 2
2

Vérificateur de Palindrome

Facile
Créez une fonction estPalindrome(mot) qui vérifie si un mot est un palindrome (se lit de la même façon dans les deux sens).
// Exemple d'utilisation : console.log(estPalindrome('radar')); // true console.log(estPalindrome('kayak')); // true console.log(estPalindrome('hello')); // false
💡 Indice : Utilisez la méthode split(), reverse() et join() pour inverser la chaîne.
function estPalindrome(mot) {
    const motInverse = mot.split('').reverse().join('');
    return mot === motInverse;
}

// Tests
console.log(estPalindrome('radar')); // true
console.log(estPalindrome('kayak')); // true
console.log(estPalindrome('hello')); // false
console.log(estPalindrome('level')); // true
3

Filtrer les Nombres Pairs

Facile
Créez une fonction filtrerPairs(tableau) qui retourne un nouveau tableau contenant uniquement les nombres pairs.
// Exemple d'utilisation : const nombres = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; console.log(filtrerPairs(nombres)); // [2, 4, 6, 8, 10]
💡 Indice : Utilisez la méthode filter() et l'opérateur modulo (%).
function filtrerPairs(tableau) {
    return tableau.filter(nombre => nombre % 2 === 0);
}

// Tests
const nombres = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
console.log(filtrerPairs(nombres)); // [2, 4, 6, 8, 10]
4

Compter les Voyelles

Moyen
Créez une fonction compterVoyelles(texte) qui compte le nombre de voyelles (a, e, i, o, u) dans une chaîne de caractères.
// Exemple d'utilisation : console.log(compterVoyelles('Hello World')); // 3 console.log(compterVoyelles('JavaScript')); // 3
đź’ˇ Indice : Convertissez en minuscules et utilisez une boucle ou filter().
function compterVoyelles(texte) {
    const voyelles = 'aeiouAEIOU';
    let compteur = 0;
    
    for (let lettre of texte) {
        if (voyelles.includes(lettre)) {
            compteur++;
        }
    }
    
    return compteur;
}

// Alternative avec filter
function compterVoyelles2(texte) {
    const voyelles = 'aeiouAEIOU';
    return texte.split('').filter(lettre => 
        voyelles.includes(lettre)
    ).length;
}

// Tests
console.log(compterVoyelles('Hello World')); // 3
console.log(compterVoyelles('JavaScript')); // 3
5

FizzBuzz

Moyen
Créez une fonction fizzBuzz(n) qui affiche les nombres de 1 à n. Pour les multiples de 3, affichez "Fizz". Pour les multiples de 5, affichez "Buzz". Pour les multiples de 3 et 5, affichez "FizzBuzz".
// Exemple d'utilisation : fizzBuzz(15); // 1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, // Buzz, 11, Fizz, 13, 14, FizzBuzz
💡 Indice : Vérifiez d'abord si le nombre est divisible par 15, puis par 3, puis par 5.
function fizzBuzz(n) {
    for (let i = 1; i <= n; i++) {
        if (i % 15 === 0) {
            console.log('FizzBuzz');
        } else if (i % 3 === 0) {
            console.log('Fizz');
        } else if (i % 5 === 0) {
            console.log('Buzz');
        } else {
            console.log(i);
        }
    }
}

// Test
fizzBuzz(15);
6

Trouver le Maximum

Moyen
Créez une fonction trouverMax(tableau) qui retourne le plus grand nombre dans un tableau sans utiliser Math.max().
// Exemple d'utilisation : console.log(trouverMax([3, 7, 2, 9, 1])); // 9 console.log(trouverMax([-5, -2, -10])); // -2
💡 Indice : Parcourez le tableau et gardez une trace du maximum trouvé.
function trouverMax(tableau) {
    let max = tableau[0];
    
    for (let i = 1; i < tableau.length; i++) {
        if (tableau[i] > max) {
            max = tableau[i];
        }
    }
    
    return max;
}

// Alternative avec reduce
function trouverMax2(tableau) {
    return tableau.reduce((max, current) => 
        current > max ? current : max
    );
}

// Tests
console.log(trouverMax([3, 7, 2, 9, 1])); // 9
console.log(trouverMax([-5, -2, -10])); // -2