Accueil site Tableur Programmation Outils XML Téléchargement Informations



Algorithmique

Prolongement

Symétrie centrale 
 
Introduction
Initiation
  Généralités
  Première activité
  Calcul d'une racine carrée
  Exemple en géométrie
  Exemple avec Logo
Prolongement
  Symétrie centrale
  Parallélogramme
  Procédures avec Logo
  Récursivité avec Logo
Avec Algobox
  Fraction irréductible
  Fonction monotone
  Résolution d'équation 1
  Résolution d'équation 2
Avec Python
  Environnement
  Autres environnements
  L'essentiel
  Premier exemple
  Addition de fractions
  Cryptographie
  Statistiques / Probabilité
Avec Java
  Environnement
  L'essentiel
  Premier exemple
  Avec des classes
 
Le plan étant muni d'un repère, on donne les coordonnées d'un point qui sera le centre de symétrie. Pour tout point du plan, il faut trouver les coordonnées du point symétrique.

On demande aux élèves de préciser les variables qui seront utilisées et d'écrire l'algorithme avec les trois parties : Entrée, Traitement et Sortie,

Puis on demande aux élèves d'utiliser un tableur pour transcrire leur algorithme et de faire un graphique pour visualiser les points. On peut leur proposer de créer eux-mêmes la feuille de calcul ou d'utiliser une feuille préparée (pour Excel ou Calc),

On doit obtenir la présentation suivante :


Le graphique (qui est automatique dans la feuille préparée) peut être obtenu de la manière suivante :
Avec Excel
  • sélectionner la cellule contenant l'ordonnée de A, puis cliquer sur le bouton Assistant graphique de la barre d'outils Standard ;
  • dans la première étape de la boîte de dialogue de l'assistant, choisir Nuage de points (avec le premier sous-type) comme type de graphique ;
  • cliquer sur le bouton Suivant pour passer à la deuxième étape. Cliquer sur le deuxième onglet Séries ;
  • cliquer dans le champ Valeur X et supprimer son contenu puis sélectionner dans l'ordre (sélection disjointe en maintenant enfoncée la touche Ctrl) les cellules contenant l'abscisse de O, l'abscisse de A et l'abscisse de A' ;
  • cliquer dans le champ Valeur Y et supprimer son contenu puis sélectionner dans l'ordre (sélection disjointe en maintenant enfoncée la touche Ctrl) les cellules contenant l'ordonnée de O, l'ordonnée de A et l'ordonnée de A' ;
  • cliquer sur le bouton Suivant pour passer à la troisième étape. Dans l'onglet Quadrillage, cocher Quadrillage principal pour l'axe des X et l'axe des Y et dans l'onglet Légende, décocher Afficher la légende ;
  • Cliquer sur le bouton Terminer.
Télécharger le fichier complété pour Excel.
Avec Calc
  • sélectionner dans l'ordre (sélection disjointe en maintenant enfoncée la touche Ctrl) les cellules contenant l'ordonnée de O, l'ordonnée de A et l'ordonnée de A' ;
  • puis cliquer sur l'outil graphique ;
  • dans la boîte graphique, choisir à l'étape Type du graphique, le type XY (dispersion) ;
  • à l'étape Plage de données, laisser Séries en colonne ;
  • à l'étape Séries de données, cliquer sur Valeur Y et copier la Plage de valeur pour Y puis cliquer sur Valeur X et coller les valeurs copiées. Modifier ensuite les numéros de ligne des références des trois cellules pour avoir celles des cellules contenant les abscisses des points ;
  • À l'étape Élément du diagramme, cocher Axe X et Axe Y pour l'affichage des grilles (quadrillage) ;
  • Cliquer sur le bouton Terminer.
Télécharger le fichier complété pour Calc.

Avec Excel ou Calc, le graphique apparaît alors avec les points O et A ainsi que le point A' symétrique du point A par rapport au point O. On peut aussi modifier la présentation (couleur de fond, couleur du quadrillage, forme et couleur des marques etc.) ainsi que l'échelle de chaque axe si on veut fixer l'unité principale et secondaire (pour le quadrillage) voire limiter la zone de représentation.

On peut ensuite demander aux élèves d'écrire leur algorithme avec Algobox :


Dans l'onglet Dessiner dans un repère d'Algobox, on peut, après avoir ajouté une ligne à l'algorithme, cocher Utiliser un repère et cliquer sur Ajouter TRACER POINT ; une boîte de dialogue permet alors d'entrer les coordonnées du point (en désignant les variables correspondantes). Télécharger le fichier Algobox.

On peut alors demander aux élèves de calculer les coordonnées des symétriques des sommets d'un triangle par rapport à un point O et d'afficher les triangles obtenus.
Dans la feuille de calcul précédente, il suffit d'ajouter quelques lignes (et modifier les données sources du graphique) pour obtenir la présentation suivante :


Les élèves peuvent compléter leur feuille ou utiliser une feuille préparée (pour Excel ou Calc),
Télécharger la feuille complétée pour Excel ou Calc.

Dans la feuille de calcul précédente d'Excel, on peut aussi créer un bouton pour exécuter un programme Visual Basic (langage intégré à Excel) traduisant l'algorithme précédent.

Private Sub CommandButton1_Click()
'variables
Dim xa As String, xb As String, xc As String, ya As String, yb As String, yc As String
Dim xo As String, yo As String
Dim xd As Double, xe As Double, xf As Double, yd As Double, ye As Double, yf As Double
'Initialisation
Cells(5, 4).Value = "": Cells(6, 4).Value = ""
Cells(8, 4).Value = "": Cells(9, 4).Value = ""
Cells(11, 4).Value = "": Cells(12, 4).Value = ""
Cells(14, 4).Value = "": Cells(15, 4).Value = ""
Cells(18, 4).Value = "": Cells(19, 4).Value = ""
Cells(22, 4).Value = "": Cells(23, 4).Value = ""
'Entrées : saisie des données et affichage
xo = InputBox("Donner l'abscisse du point O", "Coordonnées du point O", 5)
If xo = "" Then Exit Sub
Cells(5, 4).Value = xo
yo = InputBox("Donner l'ordonnée du point O", "Coordonnées du point O", 4)
If yo = "" Then Exit Sub
Cells(6, 4).Value = yo
xa = InputBox("Donner l'abscisse du point A", "Coordonnées du point A", 3)
If xa = "" Then Exit Sub
Cells(8, 4).Value = xa
ya = InputBox("Donner l'ordonnée du point A", "Coordonnées du point A", 6)
If ya = "" Then Exit Sub
Cells(9, 4).Value = ya
xb = InputBox("Donner l'abscisse du point B", "Coordonnées du point B", 2)
If xb = "" Then Exit Sub
Cells(11, 4).Value = xb
yb = InputBox("Donner l'ordonnée du point B", "Coordonnées du point B", 4)
If yb = "" Then Exit Sub
Cells(12, 4).Value = yb
xc = InputBox("Donner l'abscisse du point C", "Coordonnées du point C", 4)
If xc = "" Then Exit Sub
Cells(14, 4).Value = xc
yc = InputBox("Donner l'ordonnée du point C", "Coordonnées du point C", 3)
If yc = "" Then Exit Sub
Cells(15, 4).Value = yc
'Traitements
'Calcul des coordonnées de A'
xd = 2 * xo - xa
yd = 2 * yo - ya
'Calcul des coordonnées de B'
xe = 2 * xo - xb
ye = 2 * yo - yb
'Calcul des coordonnées de C'
xf = 2 * xo - xc
yf = 2 * yo - yc
'Sortie : affichage des coordonnées
Cells(19, 4).Value = xd
Cells(20, 4).Value = yd
Cells(22, 4).Value = xe
Cells(23, 4).Value = ye
Cells(25, 4).Value = xf
Cells(26, 4).Value = yf
End Sub

Télécharger le fichier Excel complété.

Avec Calc le programme est un peu plus long du fait du mode d'accès aux cellules de la feuille.
Télécharger le fichier Calc complété.

Remarques
  • la fonction InputBox renvoie une expression de type chaîne, les variables xa, ya, xb, yb, xc, yc, xo et yo sont donc déclarées de type chaîne. Si on clique sur le bouton Annuler, la fonction InputBox renvoie une chaîne vide.
  • la fonction Val convertit un nombre rentré au format texte en nombre. Elle renvoie 0 pour une chaîne vide. Pour Excel la conversion se fait automatiquement, il est donc inutile d'utiliser cette fonction.
  • c'est le point qui doit être utilisé pour la virgule (sinon le nombre ne sera pas interprété correctement).
Si on fixe le minimum et maximum des abscisses et des ordonnées sur le graphique (par l'onglet échelle), on peut demander aux élèves de modifier l'algorithme pour tester les valeurs tapées et de ne pas accepter des valeurs dépassant les limites fixées.

© Matabu mars 2020 - Tous droits réservés. Limitation à l'usage non commercial, privé ou scolaire.