• Aucun résultat trouvé

Devoir à la maison Étoile Noire

N/A
N/A
Protected

Academic year: 2022

Partager "Devoir à la maison Étoile Noire"

Copied!
2
0
0

Texte intégral

(1)

Devoir à la maison Étoile Noire

Eric Berthomier

[email protected]

6 décembre 2014

1 Énoncé

À l’aide du module Turtle et en utilisant l’orienté objet de ce module, dessiner la figure ci-dessous.

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

3 Minimum demandé - Note maximale : 15/20

L’étoile est dessinée avec des paramètres fixés dans le code.

1

(2)

4 Corrigé

#!/usr/bin/python3

# -*- coding: UTF-8 -*-

# Adapté d'un devoir d'élève (LK)

# Import de la librairie Turtle import turtle

# Définition d'une fonction ligne

# Trace une ligne partant du point (x1,y1) au point (x2,y2) def ligne (tortue, x1, y1, x2, y2):

tortue.up() tortue.goto(x1,y1) tortue.down() tortue.goto(x2,y2)

nbre_pointes = int(input("Choisir nombre de pointes : ")) # Permet de choisir le nombre de pointes

#~ nbre_pointes = 20

dim_fen_x =int(input("Choisir la dimension en X de la fenetre : ")) # Permet de choisir la taille de la fenetre en X

#~ dim_fen_x = 600

dim_fen_y =int(input("Choisir la dimension en Y de la fenetre : ")) # Permet de choisir la taille de la fenetre en Y

#~ dim_fen_y = 400

# Définition des limites - Bordure de 20 pixels x_max = ((dim_fen_x-40)/2)

y_max = ((dim_fen_y-40)/2)

#Calcul de l'intervalle entre deux points de départs sur X et Y espace_x = x_max/nbre_pointes

espace_y = y_max/nbre_pointes

# Définition de la fenêtre d'affichage

turtle.setup (dim_fen_x,dim_fen_y) # Taille du canevas wn = turtle.Screen () # La fenêtre d'écran de Turtle wn.title ("Black_Star") # Définit un titre

angelo= turtle.Turtle() # Instance d'un objet "Turtle"

angelo.shape ("turtle") # Choix de la forme d'angelo angelo.speed (10)

#Trace du repère ( x,y )

#Le repère est limité aux dimensions maximales definies auparavant ligne (angelo, -x_max, 0, x_max, 0)

ligne (angelo, 0, -y_max, 0, y_max)

# Chaque ligne démarre sur l'un des axes et finit sur un axe (x=0 ou y=0)

# Donc seule 2 valeurs sont à calculer

# Quart Nord Est

for cptin range (nbre_pointes):

ligne (angelo, 0, y_max - cpt * espace_y, (( cpt + 1) * espace_x), 0)

# Quart Sud Est

for cptin range (nbre_pointes):

ligne (angelo, 0, - y_max + cpt * espace_y, (( cpt + 1) * espace_x), 0)

# Quart Nord Ouest

for cptin range (nbre_pointes):

ligne (angelo, 0, y_max - cpt * espace_y, 0 - (( cpt + 1) * espace_x), 0)

# Quart Sud Ouest

for cptin range (nbre_pointes):

ligne (angelo, 0, - y_max + cpt * espace_y, 0 - (( cpt + 1) * espace_x), 0)

# On montre notre oeuvre sans la tortue angelo.hideturtle()

wn.exitonclick() # On attend un clic sur la croix

Références

Documents relatifs

Pour bien lire, c'est précisément ce qu'il faut faire : une syllabe étant décodée (le «che» de «cheval» par exemple), il faut encore trouver la syllabe suivante («val»),

Valider avec , puis modifier une nouvelle fois le fichier figure8 7 pour obtenir la figure :. Il suffit de modifier deux nombres et d’ajouter deux lignes dans la boucle à la fin –

De nombreux obstacles sont apparus ; codes couleurs incorrects pour les traits de coupe et de gravure, réglages de puissance de coupe et de gravure inadaptés à l'épaisseur de la

Le module Turtle contient des fonctions pour déplacer un curseur dans une fenêtre graphique en laissant une trace sous les endroits par lesquels il est passé... Les

À l’aide du module Turtle et en utilisant l’orienté objet de ce module, écrire un programme qui dessine une figure

b- Etape 2 : Testez votre module à l’aide d’un programme qui fera appel à ces fonctions à plusieurs reprises, avec des arguments variés pour dessiner une série de carrés et

Ces étoiles peuvent se construire à l’intérieur de polygones réguliers qui ont un nombre impair de côtés : à l’aide de ta règle et d’un crayon bien taillé, construis

C’est cette tentative que veut développer l’approche ASEI/PDSI en aidant nos enseignants à changer de paradigme pédagogique vis-à-vis de l’enseignement /apprentissage des