L'Atelier du Web

Fonctions et conditions

Guides prérequis

Les fonctions

Console

Comme tu le vois, les fonctions permettent d’éviter les répétitions dans le code lorsqu’on fait la même chose plusieurs fois. En plus, si tu donnes un nom clair à ta fonction, cela va grandement faciliter la lecture du code : quand tu appelles getSecondsIn, tu peux supposer que tu recevras un nombre de secondes !

Les conditions

Console

La fonction rollDice() renvoie un nombre aléatoire en 1 et 6.

Comment ça marche ?

D’abord, Math.random() renvoie un nombre décimal aléatoire entre 0 et 1, par exemple 0.568. 1 étant exclu, le nombre maximum serait 0.999… C’est souvent comme cela qu’on génère un nombre aléatoire en programmation.

Math.random() * 6 permet d’amener ce nombre à l’intervalle qui nous intéresse : entre 0 et 6 exclu. Par exemple, 0.568 devient 3.408.

Math.floor() arrondit le nombre à l’entier inférieur. Les résultats possibles sont donc 0, 1, 2, 3, 4 et 5.

En ajoutant + 1, on obtient un nombre entre 1 et 6 !

À la fin du code, une condition vérifie que le résultat est égal à 6. Si c’est le cas, un message s’affiche dans la console.

Tout cela est cool, mais actuellement, rollDice() ne fonctionne que pour un dé à 6 faces… Pourrait-on changer cela ?

  1. Essaie d’ajouter à la fonction un argument « faces » (ou sides en anglais), puis modifie le * 6 par * sides.
  2. Choisis le nombre de faces quand tu appelles la fonction.
  3. Mets à jour la condition (if…) pour qu’elle s’adapte automatiquement au nombre de faces actuel.

L’opérateur de négation

Si tu veux vérifier que le résultat n’est pas égal au maximum, tu peux utiliser l’opérateur != (différent de) ou bien inverser une condition avec ! (non).

Console

Dans cet exemple, result != sides et !(result == sides) vérifient exactement la même chose. Tu peux placer l’opérateur ! devant n’importe quelle valeur booléenne : true devient false et vice-versa.

Bonjour ! Je suis un assistant IA qui peut te donner des conseils pour réussir les exercices et améliorer ton code. Utilise le bouton « J'ai besoin d'aide » pour m'appeler !