TP2 - Notion de fonctions - Python (SNT)¶

On commencera par modifier le shell avant d'écrire les programmes (attendre les instructions)

Exercice 1 : Introduction.¶

Cet exercice n'a pas à être sauvegardé. Il permet de comprendre la suite du TP (ex. 2).

Une fonction est une portion de programme qui réalise une tâche bien précise et qu'on peut utiliser autant de fois qu'on le veut.

Dans Python, définir une fonction on utilise le mot clé def qui signifie define en anglais. Ensuite on donne un nom significatif à la fonction, puis entre parenthèses on écrit les paramètres de la fonction.

Pour exécuter une fonction f il faut l’appeler dans le programme en écrivant par exemple ici f(10). On a donné la valeur 10 au paramètre. On peut alors "appeler" cette fonction autant de fois qu'on le veut.

On donne le programme suivant.

In [ ]:
import turtle

# definition de la fonction cercle
def cercle(rayon):  # x, y et rayon sont les paramètres de la fonction
    turtle.circle(rayon)

    
# appel de la fonction (on l'utilise)
cercle(20)
  1. Copier/coller le code pécédent et exécuter le programme.

  2. Appeler la fonction cercle avec le paramètre 50.

Exercice 2 : Fonctions.¶

Exercice à sauvegarder dans un fichier nommé tp2_ex2.py

Le but de l'exercice est de réaliser la figure ci-dessous :

tp2_ex2.jpg

Pour cela, nous allons définir et utiliser 4 fonctions : la fonction equilateral, la fonction carre, la fonction pentagone et la fonction hexagone.

NE PAS UTILISER D'ACCENTS !!

  1. On rappelle que l'instruction turtle.left(x) permet de faire tourner la tortue sur elle même vers la gauche d'un angle de x°. En vous aidant du programme précédent, définir une fonction nommée equilateral (sans accent) qui prend en paramètre une variable nommée cote (qui représente la longueur d'un côté du triangle équilatéral) et qui trace un triangle équilatéral ("vers le haut").

  2. Dans l'interpréteur, appeler la fonction equilateral avec le paramètre 100 pour vérifier qu'on obtient bien un triangle équilatéral.

  3. Définir une fonction nommée carre qui prend en paramètre une variable nommée cote (qui représente la longueur d'un côté du carre) et qui trace un carré ("vers le haut").

  4. Dans l'interpréteur, appeler la fonction carre avec le paramètre 100 pour vérifier qu'on obtient bien un carre.

  5. Définir une fonction nommée pentagone qui prend en paramètre une variable nommée cote (qui représente la longueur d'un côté du pentagone) et qui trace un pentagone régulier ("vers le haut"). On choisira un angle de 72° (360/5).

  6. Dans l'interpréteur, appeler la fonction pentagone avec le paramètre 100 pour vérifier qu'on obtient bien un pentagone régulier.

  7. Définir une fonction nommée hexagone qui prend en paramètre une variable nommée cote (qui représente la longueur d'un côté du hexagone) et qui trace un hexagone régulier ("vers le haut"). On choisira un angle de 60° (360/6).

  8. Dans l'interpréteur, appeler la fonction hexagone avec le paramètre 100 pour vérifier qu'on obtient bien un hexagone régulier.

  9. À la suite des fonctions, appelez successivement les fonctions hexagone, pentagone, carre et equilateral avec le même paramètre de votre choix.

  10. Pour ajouter de la couleur : avant l'appel de chacune des fonctions précédentes, ajouter les lignes suivantes :

In [ ]:
turtle.begin_fill()
turtle.fillcolor('red')  #'red' peut être remplacé par la couleur de son choix

et juste après l'appel de la fonction, ajouter la ligne :

In [ ]:
turtle.end_fill()