TP4 - Turtle
- Comprendre le concept de variable ;
- Effectuer des affectations ;
- Gérer des cas dans des programmes ;
- Répéter des instructions.
- Se créer un dossier
SNT
sur votre ordinateur ou clé USB - Dans ce dossier, créer un dossier
T3 - Programmation
(Programmation Orientée Objet)
Sur EduPython ou autre instance python, faire :
- Créer un nouveau fichier en cliquant sur l'icône
📄
, ou en appuyant surCTRL
+N
- Enregistrer le fichier sous le nom
TP4_Turtle
en cliquant sur l'icône💾
, ou en appuyant surCTRL
+S
L'ensemble des exercices se fait sur le logiciel EduPython.
Rappels
On utilise int(input())
pour saisir un entier et le stocker dans une variable.
Pour afficher le contenu d’une variable ou du texte, on utilise la fonction print()
:
variable = int(input("saisir quelque chose"))
print(variable)
print("Afficher un texte")
Les conditions permettent d'exécuter un bout de code, ou bien un autre, suivant le résultat d'une condition :
age = 18
if age >= 18 :
print("Je suis majeur")
else :
print("Je suis mineur")
Pour répéter des instructions, on utilise la boucle for
:
for i in range(0,10) :
print("Bonjour")
"Bonjour" sera répété 10 fois.
Turtle
Turtle est une bibliothèque (ensemble de fonctionnalités) utilisable en python, permettant de programmer graphiquement des dessins :
Recopier le cde suivant sur un nouveau document python, et l'exécuter :
from turtle import *
pencolor("green")
backward(50)
right(90)
forward(50)
left(90)
forward(50)
right(90)
forward(50)
right(90)
forward(50)
up()
backward(100)
down()
pencolor("red")
right(90)
forward(100)
right(160)
forward(105)
left(160)
forward(100)
right(90)
up()
forward(40)
down()
pencolor("blue")
forward(100)
backward(50)
right(90)
forward(100)
mainloop()
Fonctionnalités
Turtle dispose d'un ensemble de fonctionnalités pour dessiner :
Fonction | Signification |
---|---|
forward(distance) | avance le trait en fonction de la distance (en pixel) |
backward(distance) | recule le trait en fonction de la distance (en pixel) |
right(degre) | tourne le trait à droite en fonction de l’angle (en degre) |
left(degre) | tourne le trait à gauche en fonction de l’angle (en degre) |
up() | Lève le crayon (utile pour les déplacements) |
down() | Baisse le crayon pour dessiner |
pencolor(couleur) | Change la couleur du crayon en fonction d’une couleur (en anglais) |
mainloop() | OBLIGATOIRE, permet d’afficher la fenêtre de dessin |
Carré
On souhaite dessiner un carré jaune de taille 100 pixels :
- Mettre la couleur du crayon en jaune.
- Faire avancer le trait de 100 pixels.
- Pivoter le crayon de 90 degrés.
- Écrire les instructions nécessaires pour finir le carré.
On peut remarquer que dans le programme, des lignes se répètent et sont identiques.
- Modifier le programme pour avoir une boucle répétant les informations nécessaires pour dessiner ce même carré.
Pentagone
Un pentagone est un polygone à 5 côtés.
- En s'inspirant du programme précédent, dessiner un pentagone rouge.
Maintenant que l'on sait dessiner un pentagone, nous pouvons répéter la boucle permettant de le dessiner.
- Rajouter une boucle permettant de dessiner 6 pentagones. On changera l’angle à la fin de chaque pentagone pour faire un décalage, et ainsi voir tous les pentagones.
Astuce
Pour dessiner plus vite, écrire
speed(0)
avant de dessiner.
Polygone
On souhaite maintenant modifier un peu le programme pour pouvoir saisir au clavier un nombre correspondant au nombre de côtés d’un polygone à dessiner.
- Rajouter l'instruction permettant de saisir un entier au clavier, et l'affecter dans la variable
nb_cotes
. - Modifier la boucle dessinant le pentagone de la question 3 pour dessiner le polygone. La boucle ne fera plus 5 tours, mais
nb_cotes
tours.
Un polygone doit posséder au minimum 3 côtés.
- À l'aide d'une condition, dessiner le polygone si le nombre de côté est supérieur ou égal à 3, et afficher "nombre de côtés insuffisant" dans le cas contraire.
Travail de groupe
Par groupe de 2 voire 3, faire une carte de fêtes de fin d'année 🎅 🎄