{"id":1393,"date":"2025-10-25T16:36:10","date_gmt":"2025-10-25T12:36:10","guid":{"rendered":"https:\/\/iremi.univ-reunion.fr\/?p=1393"},"modified":"2025-10-25T17:03:29","modified_gmt":"2025-10-25T13:03:29","slug":"les-programmes-de-calcul-en-cycle-3","status":"publish","type":"post","link":"https:\/\/iremi.univ-reunion.fr\/?p=1393","title":{"rendered":"Les programmes de calcul en cycle 3"},"content":{"rendered":"\n<p>Depuis les ann\u00e9es 1980, Yves Chevallard propose d&rsquo;entrer dans l&rsquo;alg\u00e8bre par le biais de programmes de calcul, et ce, d\u00e8s le premier degr\u00e9. On verra plus bas que les programmes de calcul peuvent \u00eatre vus comme une g\u00e9n\u00e9ralisant les probl\u00e8mes de changement d&rsquo;\u00e9tat dans la classification de G\u00e9rard Vergnaud. Traditionnellement, on les pr\u00e9sente comme des tours de magie, comme le faisait Claude Gaspard Bachet de M\u00e9ziriac au d\u00e9but du XVII<sup>e<\/sup> si\u00e8cle :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"751\" height=\"192\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/programmeIV.png\" alt=\"\" class=\"wp-image-1395\" srcset=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/programmeIV.png 751w, https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/programmeIV-300x77.png 300w\" sizes=\"auto, (max-width: 751px) 100vw, 751px\" \/><\/figure>\n\n\n\n<p>Cet exemple de programme de calcul, de par son \u00e2ge respectable (4 si\u00e8cles au moins), servira \u00e0 illustrer les outils pr\u00e9sent\u00e9s dans cet article.<\/p>\n\n\n\n<p>Dans le programme de cycle 3 de 2025, on lit, comme objectif d&rsquo;apprentissage en alg\u00e8bre en CM 1 :<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Ex\u00e9cuter un programme de calcul<\/p>\n<\/blockquote>\n\n\n\n<p>et en CM 2 :<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Ex\u00e9cuter ou produire un programme de calcul<\/p>\n<\/blockquote>\n\n\n\n<p>Dans cet article, on d\u00e9crit divers outils permettant d&rsquo;\u00e9tudier des programmes de calcul (en CM 1 et CM 2) voire d&rsquo;en cr\u00e9er (en CM 2).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Flow974Primaire<\/h2>\n\n\n\n<p>L&rsquo;outil est <a href=\"https:\/\/alainbusser.github.io\/flow974primaire\/\">en ligne<\/a>. On a une version <a href=\"https:\/\/alainbusser.github.io\/flow974primaire\/flow1.html\">\u00e0 une \u00e9tape<\/a> (pour mod\u00e9liser des changements d&rsquo;\u00e9tat dans la classification de Vergnaud), mais pour le programme de Bachet, on a besoin de <a href=\"https:\/\/alainbusser.github.io\/flow974primaire\/flow5.html\">la version \u00e0 5 \u00e9tapes<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"737\" height=\"118\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-134755.png\" alt=\"\" class=\"wp-image-1402\" srcset=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-134755.png 737w, https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-134755-300x48.png 300w\" sizes=\"auto, (max-width: 737px) 100vw, 737px\" \/><\/figure>\n\n\n\n<p>Le programme de calcul par d\u00e9faut est<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>ajouter 2<\/li>\n\n\n\n<li>ajouter 1<\/li>\n\n\n\n<li>ajouter 5<\/li>\n\n\n\n<li>ajouter 3<\/li>\n\n\n\n<li>ajouter 8<\/li>\n<\/ol>\n\n\n\n<p>alors que celui de Bachet est<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>multiplier par 2 (doubler)<\/li>\n\n\n\n<li>ajouter 5<\/li>\n\n\n\n<li>multiplier par 5 (quintupler)<\/li>\n\n\n\n<li>ajouter 10<\/li>\n\n\n\n<li>multiplier par 10 (d\u00e9cupler)<\/li>\n<\/ol>\n\n\n\n<p>Il faut donc cliquer sur les signes op\u00e9ratoires pour les remplacer (via des menus d\u00e9roulants) par les bonnes op\u00e9rations, et sur les op\u00e9randes pour les ajuster (par exemple avec les fl\u00e8ches \u00e0 droite pour augmenter ou diminuer). Quand on arrive \u00e0 cela :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"730\" height=\"112\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-135705.png\" alt=\"\" class=\"wp-image-1403\" srcset=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-135705.png 730w, https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-135705-300x46.png 300w\" sizes=\"auto, (max-width: 730px) 100vw, 730px\" \/><\/figure>\n\n\n\n<p>on peut bouger le nombre \u00e0 gauche (pour l&rsquo;instant 8) afin d&rsquo;\u00e9mettre des conjectures sur ce programme de calcul.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Flow974<\/h2>\n\n\n\n<p><a href=\"https:\/\/rodeofly.github.io\/flow974\/\">flow974<\/a> \u00e9tait plus adapt\u00e9 aux programmes de calcul du DNB, mais au nom du <em>qui peut le plus, peut le moins<\/em>, on peut, <em>a minima<\/em>, envisager de s&rsquo;en servir en 6<sup>e<\/sup>, comme transition entre les programmes de calcul <code>flow974primaire<\/code> et la programmation visuelle par blocs (voir plus bas). On peut programmer par exemple ainsi le tour de magie de Bachet :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"763\" height=\"152\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-140755.png\" alt=\"\" class=\"wp-image-1405\" srcset=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-140755.png 763w, https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-140755-300x60.png 300w\" sizes=\"auto, (max-width: 763px) 100vw, 763px\" \/><\/figure>\n\n\n\n<p>On peut ensuite modifier le nombre de gauche (en modifier un autre ferait changer de programme de calcul) pour \u00e9tudier le programme de calcul.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tableur<\/h2>\n\n\n\n<p>Comme exemple, on choisit le plus connu des tableurs libres : Calc, qui fait partie de la suite Libre Office. Pour y mettre un programme de calcul, on commence par entrer un nombre (qui sera modifi\u00e9 plus tard) en A1, puis on \u00e9crit en A2 la formule <code>=A1*2<\/code> :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"309\" height=\"118\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-142828.png\" alt=\"\" class=\"wp-image-1408\" srcset=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-142828.png 309w, https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-142828-300x115.png 300w\" sizes=\"auto, (max-width: 309px) 100vw, 309px\" \/><\/figure>\n\n\n\n<p>puis, en A3, la formule <code>=A2+5<\/code> :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"298\" height=\"133\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-142856.png\" alt=\"\" class=\"wp-image-1409\" \/><\/figure>\n\n\n\n<p>Ensuite, pour rester conforme aux instructions de Bachet, on place en A4 la formule <code>=A3*5<\/code>, puis en A5 la formule <code>=A4+10<\/code>, et en A6 la formule <code>=A5*10<\/code>. On obtient alors ce fichier :<\/p>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-cb624ce3-5e2a-494a-9c8c-75fbd59f1f9b\" href=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/bachet.ods\">bachet<\/a><a href=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/bachet.ods\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-cb624ce3-5e2a-494a-9c8c-75fbd59f1f9b\">T\u00e9l\u00e9charger<\/a><\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"162\" height=\"202\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-143002.png\" alt=\"\" class=\"wp-image-1411\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">SofusColl<\/h2>\n\n\n\n<p>Sofus est un langage de programmation cr\u00e9\u00e9 \u00e0 l&rsquo;origine pour programmer des programmes de calcul. <a href=\"https:\/\/alainbusser.github.io\/Sofus\/SofusColl.html\">La version coll\u00e8ge<\/a> est utilisable d\u00e8s le CM 1 (\u00e0 condition de ne faire que des programmes de calcul, avec les instructions de la partie <code>sofus<\/code>). Le programme de Bachet ressemble \u00e0 ceci :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"301\" height=\"319\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-150016.png\" alt=\"\" class=\"wp-image-1413\" srcset=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-150016.png 301w, https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-150016-283x300.png 283w\" sizes=\"auto, (max-width: 301px) 100vw, 301px\" \/><\/figure>\n\n\n\n<p>En cliquant sur le drapeau vert, on voit la valeur finale du nombre :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"193\" height=\"173\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-150028.png\" alt=\"\" class=\"wp-image-1414\" \/><\/figure>\n\n\n\n<p>On peut modifier la valeur de d\u00e9part et recliquer sur le drapeau vert, mais aussi, on peut mettre la lettre N comme nombre de d\u00e9part :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"299\" height=\"315\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-150516.png\" alt=\"\" class=\"wp-image-1415\" srcset=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-150516.png 299w, https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-150516-285x300.png 285w\" sizes=\"auto, (max-width: 299px) 100vw, 299px\" \/><\/figure>\n\n\n\n<p>un nouveau clic sur le drapeau vert donne l&rsquo;affichage suivant :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"194\" height=\"163\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-150531.png\" alt=\"\" class=\"wp-image-1416\" \/><\/figure>\n\n\n\n<p>qui explique pourquoi Bachet a rajout\u00e9 l&rsquo;\u00e9tape de soustraire 350 et ne pas regarder les deux derniers chiffres.<\/p>\n\n\n\n<p>Pour d\u00e9cortiquer l&rsquo;expression alg\u00e9brique finale, il suffit d&rsquo;ajouter des affichages \u00e0 chaque \u00e9tape :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"298\" height=\"429\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-151745.png\" alt=\"\" class=\"wp-image-1418\" srcset=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-151745.png 298w, https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-151745-208x300.png 208w\" sizes=\"auto, (max-width: 298px) 100vw, 298px\" \/><\/figure>\n\n\n\n<p>Le clic sur le drapeau vert affiche alors les valeurs litt\u00e9rales des expressions alg\u00e9briques successives :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"191\" height=\"214\" src=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/Capture-decran-2025-10-25-151807.png\" alt=\"\" class=\"wp-image-1419\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">En d\u00e9branch\u00e9<\/h2>\n\n\n\n<p>Mais le meilleur moyen d&rsquo;\u00e9tudier des programmes de calcul, c&rsquo;est encore avec un crayon sur du papier. Voici le programme de calcul de Bachet, \u00e0 imprimer :<\/p>\n\n\n\n<div data-wp-interactive=\"core\/file\" class=\"wp-block-file\"><object data-wp-bind--hidden=\"!state.hasPdfPreview\" hidden class=\"wp-block-file__embed\" data=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/bachetdebr.pdf\" type=\"application\/pdf\" style=\"width:100%;height:200px\" aria-label=\"Contenu embarqu\u00e9 bachetdebr.\"><\/object><a id=\"wp-block-file--media-fccfb56d-70c0-4b0b-be06-596b5d73366f\" href=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/bachetdebr.pdf\">bachetdebr<\/a><a href=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/bachetdebr.pdf\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-fccfb56d-70c0-4b0b-be06-596b5d73366f\">T\u00e9l\u00e9charger<\/a><\/div>\n\n\n\n<p>L&rsquo;\u00e9l\u00e8ve peut \u00e9crire un nombre de son choix dans le cercle de gauche, puis compl\u00e9ter le graphe. <\/p>\n\n\n\n<p>Et avec la version sans op\u00e9ration, on peut m\u00eame inventer son propre programme de calcul :<\/p>\n\n\n\n<div data-wp-interactive=\"core\/file\" class=\"wp-block-file\"><object data-wp-bind--hidden=\"!state.hasPdfPreview\" hidden class=\"wp-block-file__embed\" data=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/programmescalcul.pdf\" type=\"application\/pdf\" style=\"width:100%;height:570px\" aria-label=\"Contenu embarqu\u00e9 programmescalcul.\"><\/object><a id=\"wp-block-file--media-6130ae50-c7bf-43b4-9d54-e7d15cbff5bf\" href=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/programmescalcul.pdf\">programmescalcul<\/a><a href=\"https:\/\/iremi.univ-reunion.fr\/wp-content\/uploads\/2025\/10\/programmescalcul.pdf\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-6130ae50-c7bf-43b4-9d54-e7d15cbff5bf\">T\u00e9l\u00e9charger<\/a><\/div>\n\n\n\n<p>Noter que ces graphes peuvent aussi servir en 1<sup>\u00e8re<\/sup>, pour la pr\u00e9paration de l&rsquo;\u00e9preuve anticip\u00e9e du bac, puisque dans la partie <strong>\u00e9volution et variations<\/strong> les comp\u00e9tences attendues sont<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Passer d\u2019une formulation additive (\u00ab augmenter de 5 % \u00bb, respectivement \u00ab diminuer de 5 % \u00bb) \u00e0 une formulation multiplicative (\u00ab multiplier par 1,05 \u00bb, respectivement \u00ab multiplier par 0,95 \u00bb).<\/li>\n\n\n\n<li>Appliquer un taux d\u2019\u00e9volution pour calculer une valeur finale ou initiale.<\/li>\n\n\n\n<li>Calculer un taux d\u2019\u00e9volution, l\u2019exprimer en pourcentage.<\/li>\n\n\n\n<li>Calculer le taux d\u2019\u00e9volution \u00e9quivalent \u00e0 plusieurs \u00e9volutions successives.<\/li>\n\n\n\n<li>Calculer un taux d\u2019\u00e9volution r\u00e9ciproque.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Depuis les ann\u00e9es 1980, Yves Chevallard propose d&rsquo;entrer dans l&rsquo;alg\u00e8bre par le biais de programmes de calcul, et ce, d\u00e8s le premier degr\u00e9. On verra plus bas que les programmes de calcul peuvent \u00eatre vus comme une g\u00e9n\u00e9ralisant les probl\u00e8mes de changement d&rsquo;\u00e9tat dans la classification de G\u00e9rard Vergnaud. Traditionnellement, on les pr\u00e9sente comme des [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,3],"tags":[97,30,43],"coauthors":[54],"class_list":["post-1393","post","type-post","status-publish","format-standard","hentry","category-algorithmes-programmation-et-langages","category-arithmetique-et-algebre","tag-algebre","tag-cycle-3","tag-histoire-des-mathematiques"],"_links":{"self":[{"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=\/wp\/v2\/posts\/1393","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1393"}],"version-history":[{"count":15,"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=\/wp\/v2\/posts\/1393\/revisions"}],"predecessor-version":[{"id":1426,"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=\/wp\/v2\/posts\/1393\/revisions\/1426"}],"wp:attachment":[{"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1393"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1393"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1393"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/iremi.univ-reunion.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcoauthors&post=1393"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}