Parcours
/
JavaScript
JavaScript
/
Exercices
/
Observateur d'oiseaux
Observateur d'oiseaux

Observateur d'oiseaux

Exercice d'apprentissage

Introduction

La boucle for est l'une des instructions les plus couramment utilisées pour exécuter de façon répétée une même logique. En JavaScript, elle se compose du mot-clé for, d'un en-tête entre parenthèses et d'un bloc de code contenant le corps de la boucle, entre accolades.

for (initialization; condition; step) {
  // code that is executed repeatedly as long as the condition is true
}

L'initialisation prépare généralement une variable compteur, la condition vérifie si la boucle doit continuer ou s'arrêter, et l'étape incrémente le compteur à la fin de chaque répétition. Les différentes parties de l'en-tête sont séparées par des points-virgules.

const list = ['a', 'b', 'c'];
for (let i = 0; i < list.length; i++) {
  // code that should be executed for each item list[i]
}

L'étape est souvent définie à l'aide de l'opérateur d'incrémentation ou de décrémentation de JavaScript, comme le montre l'exemple ci-dessus. Ces opérateurs modifient une variable sur place. ++ ajoute 1 à un nombre, -- soustrait 1 à un nombre.

let i = 3;
i++;
// i is now 4

let j = 0;
j--;
// j is now -1

Instructions

Tu es un passionné d'observation des oiseaux qui note combien d'oiseaux ont visité son jardin. D'habitude, tu utilises des marques de comptage dans un carnet pour compter les oiseaux, mais tu veux mieux exploiter tes données. Tu as déjà numérisé les comptages d'oiseaux par jour des semaines passées que tu avais notés dans le carnet.

Maintenant, tu veux déterminer le nombre total d'oiseaux que tu as comptés, calculer le nombre d'oiseaux pour une semaine donnée et corriger une erreur de comptage.

Note

Pour t'entraîner, utilise une boucle for pour résoudre chacune des tâches ci-dessous.

1. Détermine le nombre total d'oiseaux que tu as comptés jusqu'à présent

Commençons par analyser les données pour en avoir une vue d'ensemble. Cherche combien d'oiseaux tu as comptés au total depuis le début de tes relevés.

Implémente une fonction totalBirdCount qui accepte un objet de type tableau contenant le nombre d'oiseaux par jour. Elle doit renvoyer le nombre total d'oiseaux que tu as comptés.

birdsPerDay = [2, 5, 0, 7, 4, 1, 3, 0, 2, 5, 0, 1, 3, 1];
totalBirdCount(birdsPerDay);
// => 34

2. Calcule le nombre d'oiseaux visiteurs au cours d'une semaine donnée

Maintenant que tu as une idée générale de tes chiffres de comptage d'oiseaux, tu veux faire une analyse plus fine.

Implémente une fonction birdsInWeek qui accepte un objet de type tableau contenant les nombres d'oiseaux par jour ainsi qu'un numéro de semaine. Elle renvoie le nombre total d'oiseaux que tu as comptés au cours de cette semaine précise. Tu peux supposer que les semaines sont toujours suivies en entier.

birdsPerDay = [2, 5, 0, 7, 4, 1, 3, 0, 2, 5, 0, 1, 3, 1];
birdsInWeek(birdsPerDay, 2);
// => 12

3. Corrige une erreur de comptage

Tu t'es rendu compte que pendant tout le temps où tu essayais de suivre les oiseaux, l'un d'eux se cachait dans un coin éloigné du jardin. Tu as compris que cet oiseau passait toujours un jour sur deux dans ton jardin. Tu ne sais pas exactement où il était entre ces jours, mais ce n'était assurément pas dans ton jardin. Ton intuition d'observateur d'oiseaux te dit aussi que l'oiseau était dans ton jardin le premier jour de ta liste.

Fort de cette nouvelle information, écris une fonction fixBirdCountLog qui prend un objet de type tableau des oiseaux comptés par jour comme argument. Elle doit corriger l'erreur de comptage en modifiant le tableau donné.

birdsPerDay = [2, 5, 0, 7, 4, 1];
fixBirdCountLog(birdsPerDay);
// => [3, 5, 1, 7, 5, 1]
Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet
JavaScript Exercism

Prêt à commencer Observateur d'oiseaux ?

Inscris-toi sur Exercism pour apprendre et maîtriser JavaScript avec 37 concepts159 exercices, et un vrai mentorat humain, le tout gratuitement.