Les fonctions

Niveau:

Aujourd’hui encore, nous abordons un tutoriel de niveau débutant. Il traite d’un sujet simple mais qu’il est impératif de maîtriser. Je parle bien entendu des fonctions ! Pour ceux qui seraient fâchés avec les maths depuis le collège, pas de panique, pas de mathématiques ici, juste de la logique ( c’est seulement après que les maths arrivent ). Bon assez tourné autour du pot … C’est quoi au juste, une fonction ?

C’est quoi une fonction ?

Avant de répondre à cette question, je vais te laisser te représenter la scène suivante:

Rock ‘n Roll baby !

Un groupe de rock donne un concert au sein du stade de France, comme il s’agit d’un groupe très connu, les gens s’arrachent les places et très vite, plus aucun billet n’est disponible à la vente. C’est alors que commencent à apparaître sur le marché de faux billets, fabriqués par des faussaires. Bon, il se trouve qu’ils ne sont pas spécialement doués, ils arrivent à berner les gens qui ne s’y connaissent pas trop, mais pour quelqu’un qui a vu les faux et les vrais aucun risque de se tromper. Les organisateurs embauchent donc des vigiles, formés à la détection de faux billets. Le soir du concert, ils ont donc pour consigne de répéter les instructions suivantes pour chaque personne qui se présente au concert:

  • Demander son billet à la personne
  • Vérifier la qualité du papier
  • Vérifier le numéro du billet
  • Vérifier la qualité de l’encre
  • Si le billet du spectateur ne passe pas les 3 tests, alors il s’est fait avoir c’est un billet de contrefaçon, il ne peut pas entrer
  • Sinon, le spectateur a acheté un bon billet ( le veinard ), et il peut rentrer afin d’assister au concert.

C’est bon tu as tout compris ? Sur ? Alors félicitations, tu viens de comprendre ce qu’est une fonction ! En effet, une fonction n’est qu’une suite d’instructions répétables qui prennent ou non en entrée des paramètres définis à l’avance et dont la nature est connue. Dans notre exemple, la fonction correspond à la liste des actions effectuées par le vigile, et le paramètre est la place de concert. Et on peut voir qu’en faisant varier le paramètre ( contrefaçon ou billet authentique ), on peut obtenir un résultat différent, soit on rentre, soit on ne rentre pas.

C’est encore un peu flou ? Ok prenons un second exemple:

Un car de touristes entre dans une boutique souvenir, les articles sont variés ainsi que leur prix. Une fois leur choix fait, chaque personne doit régler ses achats. La personne chargée d’encaisser doit alors réaliser les instructions suivantes:

  • Scanner chaque article
  • Calculer un prix total
  • Annoncer le prix total au client
  • Encaisser le paiement du client
  • Si la somme donnée par le client est supérieure au prix total alors
  • Soustraire le prix total de cette somme et restituer la différence au client.
  • Sinon si la somme donnée par le client est inférieure au prix total alors
  • Soustraire du prix total, la somme donnée par le client et lui demander de régler la différence
  • Sinon, le client a payé comptant, on ne lui demande rien

Ici la fonction correspond à la suite des étapes réalisées par la personne chargée d’encaisser les paiements, les paramètres sont les articles et la somme donnée par le client pour payer, et l’on peut obtenir un résultat différent en fonction de la somme fournie par le client au moment du paiement.

Les fonctions en algorithmie

Les fonctions en algorithmie ont les mêmes caractéristiques que celles que nous venons d’étudier qui sont:

  • Un nom de fonction ( exemple: vérifier place de concert )
  • Une liste de paramètres ( exemple: place de concert
  • Une liste d’étapes à réaliser ( voir plus haut )
  • Un éventuel résultat ou valeur de retour ( ce que l’on fait à la fin de la fonction )

Une fois toutes ces caractéristiques respectées, on peut dire que l’on manipule une fonction. Les fonctions mathématiques comme celles que ton professeur essayait de t’inculquer respectent le même modèle, par exemple:

f(x) = 2x + 1

Peut se traduire par:

  • Prendre le paramètre x, puis le multiplier par 2
  • Ajouter au résultat obtenu précédemment la valeur 1
  • Retourner le résultat des opérations précédentes

Ici le nom de la fonction est « f », quand au reste il est décrit plus haut. Comme quoi, les maths, c’est avant tout de la logique. Et voilà c’est comme ça que se conclut cette introduction aux fonctions, si tu souhaites avoir un exemple concret côté code, je t’invite à te rendre sur le github du tri à bulles, tu y trouveras une fonction « bubblesort » qui implémente l’algorithme du tri à bulles. À bientôt devant un petit café !

2 commentaires pour “Les fonctions

Laisser un commentaire

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