Institut de Recherche sur l’Enseignement des Mathématiques de Lille

Accueil > Productions > Ressources pédagogiques > Lycée > Seconde > Algorithmique > Programmer l’algorithme d’Euclide

Programmer l’algorithme d’Euclide

dimanche 1er novembre 2009, par Jean-Marc Duquesnoy, Raymond Moché

Présentation :
- auteurs : Jean-Marc Duquesnoy et Raymond Moché
- statut : Article clef en main

Déroulement :
- lieu : salle informatique
- durée : 2 heures
- organisation : La « Fiche Élève » organise le travail de la classe
- matériel enseignant : « Fiche Professeur », calculatrice programmable, ordinateur équipé de « Scilab pour les lycées », livret de présentation de Scilab.
- matériel élève : calculatrice programmable, ordinateur équipé de « Scilab pour les lycées », livret de présentation de « scilab » (consultable en ligne), « Fiche Élève », fichiers « Euclide.sci » et « EuclideComplet.sci ».

But :
- intérêt pédagogique : Activité d’initiation. L’algorithme d’Euclide étant en principe connu des élèves, ceux-ci pourront concentrer leur attention sur les programmes simples qu’il utilise : calcul du reste dans la division euclidienne, calcul de la partie entière d’un réel positif. « Scilab pour les lycées » avec son Livret de présentation est un bon choix. Bien sûr, on peut préférer « Xcas » ou un autre langage de programmation.
- objectifs : Utiliser la notion d’affectation et la boucle « Tant que ».

Prérequis :
- savoirs : Algorithme d’Euclide en langage naturel (classe de Troisième), principe de la division euclidienne, partie entière d’un nombre réel.
- savoir-faire : voir le livret de présentation de « Scilab pour les lycées ».

Correspondance avec les instructions officielles :
- extrait des programmes officiels :
Programme pour la classe de Seconde, Algorithmique, p. 9 & 10.

Compétences mises en oeuvre :
- comprendre et analyser un algorithme préexistant,
- analyser la situation : identifier les données d’entrée, de sortie, le traitement,
- adapter un algorithme aux contraintes du langage de programmation,
- valider un algorithme simple.

Commentaire :
- Il convient de bien distinguer « Scilab pour les lycées » de « scilab ». « scilab » est un logiciel de calcul très puissant, rapide et évolué. Sa documentation, en anglais, est complexe et découragerait beaucoup d’élèves. Les commandes de « Scilab pour les lycées » sont simplifiées, en français, avec une documentation adaptée. Ce logiciel convient pour tous les élèves. De plus, le passage de « Scilab pour les lycées » à « scilab » sera immédiat pour les élèves des filières scientifiques puisqu’il s’agit en fait du même logiciel.
- Alternatives : scripts à copier/coller pour XCas et Javascript en Ligne

Références :
- Site de Scilab pour les lycées : Accueil
- Livret de présentation à Scilab pour les lycées
- Le logo de cette activité est extrait de l’article Euclide de l’Encyclopédie Wikipedia

Fiche Élève
Fiche Professeur

Messages

  • Ce commentaire concerne partie réelle d’un nombre réel.

    Il y a une confusion entre nombre réel informatique qui est en réalité un nombre décimal et nombre réel mathématique, notion très mal connue dans l’enseignement secondaire et non susceptible de rentrer dans un ordinateur ou calculatrice usuel. Le programme que vous proposez pour la partie entière s’applique à la partie entière d’un nombre décimal et non à la partie entière d’un nombre réel au sens mathématique du terme.

    • Cher Collègue,

      Vous affirmez que nous confondons des choses différentes mais en réalité, il n’en est rien.

      Il n’y a qu’une seule sorte de nombres réels, celle qui a été inventée par les mathématiciens (coupure, suite de Cauchy de rationnels, etc). Les élèves peuvent quand même en avoir une bonne idée en réfléchissant sur la droite réelle ou, plus simplement, sur leur double décimètre.

      Ensuite, il y a le fait que les machines n’utilisent que des valeurs approchées (très bonnes) de ces nombres et non ces nombres eux-mêmes, les approximations étant exactes (erreur d’approximation nulle) dans certains cas : entiers et parfois rationnels. Il suffit de le savoir et de le dire simplement aux élèves, de même que les calculs aussi se font de manière approchée, avec une excellente approximation dans les cas usuels. Vous pouvez essayer d’approfondir ces questions, mais c’est une spécialité difficile, bien au-delà des connaissances habituelles des professeurs de mathématiques.

      Finalement, concernant "Programmer l’algorithme d’Euclide", un nombre réel apparaît (a/b), dont on prend la partie entière, dans l’algorithme 2. D’après ce qui précède, cela ne poserait aucun problème si l’on passait vraiment par les réels. Mais on reste dans les entiers. En effet, l’algorithme 2 est une étape transitoire. Dans l’algorithme 3, les réels interviennent moins. Il y a un réel x dans la question "Est-ce que E <= x", qui n’induit aucun calcul numérique. Dans l’algorithme récapitulatif de la Troisième partie, tout se passe en nombres entiers lorsque la condition E <= a/b est remplacée par E*b <= a, maladresse que j’ai corrigée dans les documents en ligne.

      En conclusion, je suis très content d’avoir mis au point cette activité avec Jean-Marc Duquesnoy.

      Cordialement

Un message, un commentaire ?

Forum sur abonnement

Pour participer à ce forum, vous devez vous enregistrer au préalable. Merci d’indiquer ci-dessous l’identifiant personnel qui vous a été fourni. Si vous n’êtes pas enregistré, vous devez vous inscrire.

Connexions’inscriremot de passe oublié ?