Devoir à la maison Géométrie
Eric Berthomier
[email protected]
6 février 2016
1 Énoncé
À l’aide du module Turtle et en utilisant l’orienté objet de ce module, écrire un programme qui dessine une figure géométrique aléatoire. À minima, les figures :
– Cercle – Triangle – Carré – Rectangle
Les informations nécessaires à la création de la figure seront demandées à l’utilisateur.
2 Notation
Appréciation Générale 2 points Orthographe, lisibilité, propreté
Duck Typing 1 point
Commentaires 1 point
Algorithmique 10 points Programmation 6 points
Possibilité de travailler par binôme.
1
3 Corrigé
# !/usr/bin/python3
# -*- coding : UTF-8 -*-
#---
# DEVOIR MAISON
#---
import turtle import random
#---
# INITIALISATION DES VARIABLES
#---
listeFigures = ["carre", "triangle", "cercle", "rectangle"] # Liste des figures
# Fonction pour dessiner un carré def carre (screen, tortue) :
cote = screen.numinput(choix_figure, "cote :", 100, minval=1, maxval=150)
for i inrange(4) : tortue.left(90) tortue.forward(cote)
# Fonction pour dessiner un triangle def triangle (screen, tortue) :
cote = screen.numinput(choix_figure, "cote du triangle :", 100, minval=1, maxval=150)
for i inrange (3) : tortue.left(120) tortue.forward(cote)
# Fonction pour dessiner un cercle def cercle (screen, tortue) :
rayon = screen.numinput(choix_figure, "rayon :", 100, minval=1, maxval=150) tortue.circle(rayon)
# Fonction pour dessiner un rectangle def rectangle (screen, tortue) :
largeur = screen.numinput(choix_figure,"largeur :", 100, minval=1, maxval=150) longueur = screen.numinput(choix_figure, "largeur :", 100, minval=1, maxval=150)
for i inrange (2) : tortue.left (90) tortue.forward (largeur) tortue.left (90) tortue.forward (longueur)
#~ Création de l'interface Ecran
wm=turtle.Screen () # objet fenetre wm.bgcolor("black") # couleur de fond wm.title("Dessins Géométriques") # titre de la fenetre
#~ Création de la tortue
caroline=turtle.Turtle () # objet tortue caroline.shape("turtle") # forme de la tortue caroline.color("green") # couleur de la tortue
# Choix aleatoire d'une figure
choix_figure = random.choice(listeFigures)
# Exécution de la fonction associée à la figure eval ("%s (wm, caroline)"% choix_figure) wm.exitonclick()