Fiche de cours

Prototyper une fonction

Lycée   >   Premiere   >   NSI   >   Prototyper une fonction

  • Fiche de cours
  • Quiz et exercices
  • Vidéos et podcasts
Objectif

Prototyper une fonction.

Points clés
  • Avant d’écrire une fonction, il faut la prototyper.
  • Prototyper une fonction, c’est lui donner un nom, définir ses paramètres, le type de variables utilisées, ainsi que le retour que la fonction doit utiliser.
Pour bien comprendre
  • Notion de fonction
  • Utilisation de l’outil sqrt pour calculer la racine carrée
1. La théorie du prototypage
a. Le prototype d'une fonction

Lorsqu’on veut utiliser une fonction, pour l’appeler, on a besoin de préciser les informations suivantes.

  • Son nom.
    Exemple : euclid, fct, etc.
  • Ses paramètres et leur type, c’est-à-dire quelles sont les valeurs que doit utiliser la fonction, ainsi que leur type (int, float, str, etc.)
    Exemple
    euclid(int a, int b) indique que cette fonction prend des paramètres entiers. int est pour rappel l’abréviation de « integer », ce qui signifie « entier » en français.
  • Le retour et son type.
    Exemple
    int euclid(int a, int b) indique que le retour de la fonction est un nombre entier.

La précision de ces informations constitue le prototype de la fonction.

Remarque
Le langage Python ne nécessite pas de donner le type des paramètres. Cela facilite le travail d’écriture des fonctions puisque l’on n’a pas à préciser le type des paramètre ou des retours de la fonction.
Exemple de prototypage de la fonction euclid

Sur la première ligne, le mot clé def définit la fonction euclid de paramètres a et b.
Les lignes 2 à 7 correspondent au corps de la fonction.
b. Le nommage d'une fonction

Voici quelques recommandations concernant le nommage de fonctions.

  • Le nom doit indiquer de manière succincte ce qu’est la fonction, cela permet d’améliorer la lisibilité du code.
  • Par convention, les informaticiens utilisent le camelCase ou le snake_case pour nommer une fonction.
    • Le camelCase (« casse de chameau » en anglais) est une convention d’écriture qui consiste à écrire un ensemble de mots en les liant, sans espace ni ponctuation, et à mettre une majuscule sur la première lettre de chaque mot (sauf le premier).
    • Le snake_case (« casse de serpent » en anglais) est une convention d’écriture qui consiste à écrire un ensemble de mots en les séparant par des tirets bas, et à mettre une minuscule sur la première lettre de chaque mot.
Exemple
Nommage de la fonction « test affichage écran » avec les conventions camelCase et snake_case.
camelCase
snake_case
 
testAffichageEcran test_affichage_ecran

Un nom de fonction ou de variable ne doit pas contenir d’espaces, ni de tirets « hauts » (-) ou d’accents.

Remarque
On doit utiliser le même type de règles pour le nommage des variables, l’idéal étant de choisir un nom ayant un lien avec la variable.
2. Exemple du calcul de la distance euclidienne
a. Présentation de la fonction à prototyper

On veut prototyper une fonction qui prend en paramètres les coordonnées de deux points d’un plan orthonormé et qui retourne la distance euclidienne entre les deux points.

Rappel
Si A(xA ; yA) et B(xB ; yB) alors .
b. Prototypage de la fonction
Choisir le nom de la fonction

Pour prototyper cette fonction, on doit choisir un nom qui corresponde à ce qu’elle fait : cette fonction est censée calculer une distance euclidienne, on peut donc la nommer « distance ».

Déterminer les paramètres de la fonction et leur type

On doit ensuite déterminer les paramètres de la fonction : l’énoncé indique que l’on doit entrer les coordonnées de deux points, il y a donc quatre variables.

Pour le choix des variables, autant utiliser les notations mathématiques qui sont universelles, soient :

  • x1 pour l’abscisse du premier point ;
  • y1 pour l’ordonnée du premier ;
  • x2 pour l’abscisse du second ;
  • y2 pour l’ordonnée du second.

Python n’a pas besoin du type de variable, il est donc ici inutile de préciser que ces paramètres doivent être des flottants (nombres décimaux).

Déterminer le retour de la fonction et son type

Le retour de la fonction est une distance, il faut donc écrire en langage informatique (implémenter) la formule mathématique rappelée ci-dessus. Dans un langage autre que Python, il faudrait préciser que c’est un flottant de la manière suivante : float distance(float x1,float y1,float x2,float y2).

Pour pouvoir utiliser la racine carrée, on est obligé d’importer la bibliothèque qui permet de faire des mathématiques et d’utiliser la fonction racine carrée, qui est sqrt pour Python.

Les lignes de code pour prototyper la fonction

Voici ci-dessous les lignes de code qui permettent de prototyper la fonction souhaitée.

 

Le tableau ci-dessous donne l’explication ligne à ligne.

from math import * On importe tous les outils de la bibliothèque math.
def distance(x1,y1,x2,y2) On utilise le mot clé def pour indiquer que l’on définit une fonction.
return sqrt((x2-x1)**2 + (y2-y1)**2) Retour de la fonction.
x1=float(input()) On indique que le nombre que doit entrer l’utilisateur est un flottant.
y1=float(input())
x2=float(input())
y2=float(input())
print(distance(x1,y1,x2,y2)) Affichage du résultat.

Évalue ce cours !

 

Des quiz et exercices pour mieux assimiler sa leçon

La plateforme de soutien scolaire en ligne myMaxicours propose des quiz et exercices en accompagnement de chaque fiche de cours. Les exercices permettent de vérifier si la leçon est bien comprise ou s’il reste encore des notions à revoir.

S’abonner

 

Des exercices variés pour ne pas s’ennuyer

Les exercices se déclinent sous toutes leurs formes sur myMaxicours ! Selon la matière et la classe étudiées, retrouvez des dictées, des mots à relier ou encore des phrases à compléter, mais aussi des textes à trous et bien d’autres formats !

Dans les classes de primaire, l’accent est mis sur des exercices illustrés très ludiques pour motiver les plus jeunes.

S’abonner

 

Des quiz pour une évaluation en direct

Les quiz et exercices permettent d’avoir un retour immédiat sur la bonne compréhension du cours. Une fois toutes les réponses communiquées, le résultat s’affiche à l’écran et permet à l’élève de se situer immédiatement.

myMaxicours offre des solutions efficaces de révision grâce aux fiches de cours et aux exercices associés. L’élève se rassure pour le prochain examen en testant ses connaissances au préalable.

S’abonner

Des vidéos et des podcasts pour apprendre différemment

Certains élèves ont une mémoire visuelle quand d’autres ont plutôt une mémoire auditive. myMaxicours s’adapte à tous les enfants et adolescents pour leur proposer un apprentissage serein et efficace.

Découvrez de nombreuses vidéos et podcasts en complément des fiches de cours et des exercices pour une année scolaire au top !

S’abonner

 

Des podcasts pour les révisions

La plateforme de soutien scolaire en ligne myMaxicours propose des podcasts de révision pour toutes les classes à examen : troisième, première et terminale.

Les ados peuvent écouter les différents cours afin de mieux les mémoriser en préparation de leurs examens. Des fiches de cours de différentes matières sont disponibles en podcasts ainsi qu’une préparation au grand oral avec de nombreux conseils pratiques.

S’abonner

 

Des vidéos de cours pour comprendre en image

Des vidéos de cours illustrent les notions principales à retenir et complètent les fiches de cours. De quoi réviser sa prochaine évaluation ou son prochain examen en toute confiance !

S’abonner

Découvrez le soutien scolaire en ligne avec myMaxicours

Plongez dans l'univers de myMaxicours et découvrez une approche innovante du soutien scolaire en ligne, conçue pour captiver et éduquer les élèves de CP à la terminale. Notre plateforme se distingue par une riche sélection de contenus interactifs et ludiques, élaborés pour stimuler la concentration et la motivation à travers des parcours d'apprentissage adaptés à chaque tranche d'âge. Chez myMaxicours, nous croyons en une éducation où chaque élève trouve sa place, progresse à son rythme et développe sa confiance en soi dans un environnement bienveillant.

Profitez d'un accès direct à nos Profs en ligne pour une assistance personnalisée, ou explorez nos exercices et corrigés pour renforcer vos connaissances. Notre assistance scolaire en ligne est conçue pour vous accompagner à chaque étape de votre parcours éducatif, tandis que nos vidéos et fiches de cours offrent des explications claires et concises sur une multitude de sujets. Avec myMaxicours, avancez sereinement sur le chemin de la réussite scolaire, armé des meilleurs outils et du soutien de professionnels dédiés à votre épanouissement académique.

Fiches de cours les plus recherchées

NSI

S'informer sur une bibliothèque Python

NSI

Utiliser la bibliothèque Matplotlib de Python pour créer un graphique

NSI

Algorithmes de recherche : parcourir un tableau

NSI

Algorithmes de recherche : rechercher un extremum

NSI

Algorithmes de recherche : obtenir une moyenne, une médiane

NSI

Trier par insertion

NSI

Trier par sélection

NSI

Utiliser les invariants pour corriger un algorithme

NSI

Comprendre et utiliser l'algorithme des k plus proches voisins

NSI

L'algorithme de recherche dichotomique dans un tableau trié