Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
|
cours:prog_scratch_3 [2025/06/12 18:41] mrcjl |
— (Version actuelle) | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ======Dessin de polygones réguliers [TP 3ème]====== | ||
| - | Cette activité est un bilan de plusieurs connaissances et compétences de cycle 4 et une ouverture à la programmation Python qui sera utilisée au lycée. | ||
| - | Après avoir découvert [[cours: | ||
| - | |||
| - | =====Problème à résoudre===== | ||
| - | Nous voulons dessiner des polygones réguliers ayant un nombre de cotés x choisi par l' | ||
| - | {{ : | ||
| - | |||
| - | =====Recherche de l' | ||
| - | ====Éléments de solution==== | ||
| - | Nous savons que la somme des angles d'une figure fermée correspond à celle d'un cercle 360°. Pour la dessiner, il suffit donc de calculer l' | ||
| - | Il faut bien sur demander le nombre de coté voulu et leur longueur avant de vérifier si les réponses données sont cohérentes. | ||
| - | |||
| - | **Le 1er problème** est de centrer la figure dans l’écran en utilisant des formules mathématiques ([[https:// | ||
| - | On remarque, sur les dessins ci dessus, que les cotés des figures correspondent aux cordes d'un cercle et qu'au moins un coté est horizontal. On détermine donc le point de départ du tracé (dans un repère, l’écran, l' | ||
| - | |||
| - | **Le 2ème problème** consiste à déterminer la taille maximum du coté d'une figure. En effet, la taille de l' | ||
| - | Une fois que la longueur du coté/corde choisi par l' | ||
| - | |||
| - | **Pour information** : | ||
| - | * la demi hauteur de l' | ||
| - | * Scratch et Codabloc ne possèdent pas de fonction pour dessiner des cercles, d'où l' | ||
| - | |||
| - | ====Écriture de l' | ||
| - | Écrivez VOTRE algorithme en utilisant correctement les indentations. N' | ||
| - | |||
| - | Vous pouvez, lorsque vous avez terminé, le comparer à la solution type ci jointe. \\ | ||
| - | <wrap em> | ||
| - | La solution type, qui fonctionne, doit être parfaitement comprise avant d' | ||
| - | |||
| - | Les commentaires (lignes débutants par # vous aident à comprendre l' | ||
| - | ++++Solution type| | ||
| - | < | ||
| - | # Initialisation | ||
| - | Définir le rayon maximal (rmax) | ||
| - | Demander et noter le nombre de corde/coté (3 < cote <= infini) | ||
| - | Si cote incorrect | ||
| - | Signaler l' | ||
| - | sinon | ||
| - | Calculer l' | ||
| - | Calculer la corde maxi (cmax = 2 * rmax * sin(angle / 2) | ||
| - | Demander et noter la corde (10 < corde < cmax) | ||
| - | Si corde incorrect | ||
| - | Signaler l' | ||
| - | sinon | ||
| - | Calculer le rayon de la corde choisie (r = corde / 2 / sin(angle / 2)) | ||
| - | Calculer le point x (x = - corde / 2) | ||
| - | Calculer le point y (y = r * cos(angle /2) | ||
| - | # Tracé du polygone | ||
| - | Se placer au point (x, y) | ||
| - | Poser le stylo sur la fenêtre | ||
| - | Répéter tant que cote > 0 | ||
| - | Avancer de corde | ||
| - | Tourner de angle | ||
| - | Diminuer cote de 1 (cote = cote – 1) | ||
| - | # Tracé du cercle, uniquement en Python | ||
| - | Relever le stylo | ||
| - | Se positionner pour tracer le cercle englobant | ||
| - | Changer de couleur de stylo | ||
| - | Poser le stylo | ||
| - | Tracer le cercle | ||
| - | </ | ||
| - | ++++ | ||
| - | |||
| - | |||
| - | |||