NOMBRES - Curiosités, théorie et usages

 

Accueil                           DicoNombre            Rubriques           Nouveautés      Édition du: 06/05/2019

Orientation générale        DicoMot Math          Atlas                   Références                     M'écrire

Barre de recherche          DicoCulture              Index alphabétique          Brèves de Maths

 

Programmation

 

Débutants

Programmation

PYTHON

 

Glossaire

Informatique

Glossaire

Algorithme

 

 

 

INDEX

Python

 

Programmation

Informatique

Multimédia

Ordinateur

 

Python (la base)

Glossaire

Palindrome

Les classiques

Arithmétique

Dessins

Puissances

Plus de chiffres

Trucs

Chiffres

NumPy

Lycée

 

Sommaire de cette page

>>> Dessins de carrés

>>> Dessins de polygones à k côtés

>>> Cercles concentriques sur image

>>>  Fils tendus

>>> Flocon de neige ou courbe de Koch

 

 

 

 PROGRAMMATION

PYTHON – Dessins

 

Mes premiers programmes de dessins. Vous avez commencé avec Scratch, ce n'est pas plus difficile avec Python.

Python utilise la Tortue qui se déplace sur l'écran, laquelle date de 1967, implémentée dans le langage Logo.

Note: Dans les années 1970, j'ai enseigné la programmation à mes enfants à l'aide de ce langage très intuitif.

Voir absolument  Mon espace de travail en Python

 

 

Dessins de carrés

 

But

Dessiner cinq carrés concentriques.

 

Commentaires

Appel au module de dessin du type tortue (turtle).

La première instruction appelle l'objet tortue et le dessine (en fait une pointe de flèche). Désormais, la tortue est nommée T (on aurait pu mettre: Caroline à la place de T).

La variable k indique la progression en taille du côté des carrés.

 

Boucle en j pour exécuter cinq fois le dessin.

Le crayon est mis en position écriture (pendown) et avec la couleur rouge (red).

 

Boucle en i pour dessiner les quatre côtés. La tortue progresse (T.fd = T.forward = tortue en avant) et pivote (rt = rotate) de 90°.

La boucle en j, après le tracé du carré, se termine avec les instructions qui déplacent la tortue sans écrire de manière à être prêt pour le tracé du carré suivant.

 

 

 

Dessins d'étoiles

 

But

Dessiner une étoile

k est le nombre de lignes

h est la quantité de tours

 

 

 

 

Cette étoile est, celle qui figure en bas à droite sur le graphique de droite.

 

But

Dessiner un même polygone avec ses divers modes étoilés. On en profite pour les colorier.

On remplace la dernière instruction par celles-ci:

 

 

 

Dessins de polygones à k côtés

 

 

But

Dessiner une série de polygones en donnant la quantité de côtés du premier

 

Commentaires

Après appel du module tortue, on cache le dessin de la tortue.

La méthode polygone (Poly) est définie par k la quantité de côté et D, la dimension du dessin.

Angle de rotation après le dessin d'un côté est égal à 360° / k.

La longueur du côté est définie par Taille / k

La boucle répète le dessin du côté et la rotation, autant de fois que de côtés.

 

Le programme principal vous invite à indiquer la quantité de côtés.

Après quoi, le programme dessine (à gauche) cinq polygones de taille de plus en plus grande et avec moins de côtés.  Et, (à droite) avec de plus en plus de côtés.

 

 

Cercles concentriques sur image

 

But

Dessiner des cercles concentriques sur l'image de Nafnaf

 

Commentaires

Importer une image avec bgpic. Ici l'image avait été placée dans le même répertoire que le programme. L'image doit être au format png ou gif.

Réglages d'initialisation.

Rayon du premier cercle fixé à 10 et pas de progression à 10.

Boucle pour dessiner dix cercles.

Avance en crayon levé à une distance égale au rayon par rapport au centre (vers le bas).

Dessin du cercle complet avec crayon baissé.

Progression du rayon R de la quantité E.

Commande finale indiquant de fermer la fenêtre de dessin sur un clic souris.

 

Remarque

On a abrégé turtle en T pour alléger l'écriture.  Certaines commandes exigent le préfixe turtle, comme exixtonclick.  

 

 

Fils tendus

 

But

Tracé de fils tendus sur les quatre côtés d'un carré selon la quantité de fils

 

Initialisation

Appel au module turtle contenant toutes les méthodes de travail avec la tortue.

Nouveau nom (T) plus court pour la tortue. Chaque commande de travail avec la tortue sera précédée de ce T suivi d'un point. Si vous tapez T. et attendez, un bulle vous indique toutes les possibilités de commandes.

 

Définitions

Définition de fonctions ou méthodes qui seront utilisées plusieurs fois.

Note: autrefois, on disait sous-programme. Aujourd'hui, avec d'autres langages (Maple), on dit procédure. Avec Scratch, on parle de bloc.

 

Le carré est défini par son point de départ (x, y)  et la longueur de son côté c. Il sera dessiné en traits épais rouges.

 

La ligne est définie par ses deux extrémités; dessinée en un trait fin noir.

 

 

Programme principal

Demande de préciser la quantité de fils tenus sur chaque côté.

Dessin d'un carré couvrant une majeure partie du canevas ( = feuille de dessin).

Le pas de progression d est égal à la longueur d'un côté du carré divisé par la quantité de fils.

Exécution de quatre boucles traçant les fils tendus.

 

Optimisation

Pour réduire le temps de tracé, il est possible de tracer un carré au lieu de quatre fils tendus.

 

 

Exemples de dessins de fils tendus avec 20 et 60 fils par côtés

  

 

Flocon de neige ou courbe de Koch

 

 

 

 

But

Dessiner la courbe de Koch ou flocon de neige.

Un exercice classique de programmation récursive et un début pour se lancer dans la programmation des fractales.

 

Commentaires

Définition Koch: méthode qui transforme un segment en trois parties dont celle du milieu sui sera surmontée d'un morceau de triangle équilatéral. Soit un dessin de quatre segments.

L est la longueur et P, la quantité d'étapes.

 

Définition de la courbe dite flocon, formée par un triangle équilatéral, soit une boucle de trois itérations pour les trois côtés du triangle initial sur lesquels va être brodée la courbe de Koch, et cela, par appels récursifs  à Koch.

 

L'instruction en if _name … n'est pas indispensable. Vous la trouverez si vous consultez des programmes Python sur Internet. Sachez qu'elle sert de protection, de verrouillage contre une tentative d'emploi ailleurs.  (Voir Sam et Max)

 

Image ci-dessous

Obtenue avec ce code:

Voir Flocon avec Scratch

 

Les courbes de Koch selon la quantité d'étapes (de 0 à 4)

 

 

 

 

 

 

Retour

*         Programmes classiques en Python

Suite

*         Tour d'horizon Python avec l'exemple des palindromes

*         Spirales en Python

*         Triangles de Sierpinski en Python

Voir

*         Scratch – Apprendre à programmer simplement

*         Maple – Apprendre à programmer (maths)

*         Historique de l’aventure informatique

Sites

*           À la découverte de turtle – Zeste de savoir Un tutoriel complet

*           Pensez en Python – Allen B. Downey – 2016 – Vous y trouverez les explications détaillées avec exemples de toutes les notions exposées dans cette page

*           Turtle Academy – Commande de la tortue en ligne avec le langage Logo – Faire de la programmation s'en le savoir !

Cette page

http://villemin.gerard.free.fr/aInforma/PYTHON/Dessins.htm