1
Informatique générale pour l’ingénieur
Chapitre VI : Compléments sur les fonctions
I. Rappels
A. Mais Euh … A quoi ça sert une fonction ?
Lorsque vous commencerez à développer de véritables projets, vous serez confrontés à des problèmes
souvent complexes, et les lignes de programme vont commencer à s’accumuler...
L’approche efficace d’un problème complexe consiste souvent à le décomposer en plusieurs sous-
problèmes plus simples qui seront étudiés séparément . Il arrivera également souvent qu’une même
séquence d’instructions doive être utilisée à plusieurs reprises dans un programme, et on souhaitera bien
évidemment ne pas avoir à la réécrire systématiquement.
Les fonctions sont des structures qui ont été imaginées par les concepteurs des langages de haut niveau
afin de résoudre ces difficultés. Définir une fonction, c’est regrouper dans un sous programme ( c’est à dire
un bout de code indépendant du reste) les instructions destinées à accomplir une tache donnée qui se
répète souvent. Le langage a des fonctions préprogrammées (directement ou à travers l’importation de
bibliothèques) si elles ne conviennent pas à la tâche souhaitée c’est à nous de définir la fonction.
B. Définition et vocabulaire
def nomDeLaFonction(liste de paramètres):
...
bloc d'instructions
...
• Une fonction s’utilise pratiquement comme une
instruction quelconque. Dans le corps d ’un
programme, un appel de fonction est constitué du
nom de la fonction suivi de parenthèses
• La ligne contenant l’ instruction def se termine
obligatoirement par un double point, lequel
introduit un bloc d’instructions que vous ne devez
pas oublier d’indenter.
• La liste de paramètres spécifie quelles
informations (et dans quel ordre) il faudra fournir
en guise d’arguments lorsque l’on voudra utiliser
cette fonction (les parenthèses peuvent
parfaitement rester vides si la fonction ne nécessite
pas d’arguments).
Voici un exemple de fonction sans paramètres
def table():
for i in range(1,11):
n = 1
while n <11 :
print('{0:<3}'.format(n * i), end =' ')
n = n +1
print()
Que fait cette fonction ?
Critique du while ?
Nouvelle option de la méthode format ?