<snapdata remixID="8188959"><project name='From algorithms to functions' app='Snap! 4.2, http://snap.berkeley.edu' version='1'>
  <notes>Basic algorithmic exercises. Edit the project to see the exercises. 1.Variables 2.Level I Loop (Boucles de Niveau I) 3.Conditions 4.Level II Loop (Boucles de Niveau II)</notes>
  <thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAM8UlEQVR4nO3da0xcZ36A8dl0+2FbbVWp0qrdVdVKq6jSStsPK203u9ltKzVNqqQxXm8SJ3aU3aAkOHHjbBKnsWPHjh0ckmKbEF8AX7HB2IDxBWPM/TKAx8AA5j7mPtxmgBnmBszMmTnn6Qdnx7LiJg2gvGHz/0mWJeuc9xxePT5zO7xjQgh1+k2qz0B8o0mAQikJUCglAQqlJEChlAQolFp5ATY1Wyi49DGdXc2EQiHVpyOWZuUFGA6H+Pjget7Y/m02b/s7Dh/5LaXlJxka6iMajd5zH01boLR6B/6Ak7Lq9xiy1+H2DHOtchu3BkoxW/bT0p5FQ9MhKs17mHEPUFq9g97+Eqrqkiit2oGlKY2a63u53nwYW38JluY0bnbmUlK9g2lXH+U1u+kbKKOiNpEb1iPUNuyjtGYng8M1X+0ErSwrL0AAv9/Hzj0/Y8tuE1t2m3h7l4nXtnyLze/8iDPntnLdUsT0tBPDMGL7pJ38Z6rrPiLvcjxhbYGcgvUMDJs5X/gileY9nLv0W84WrOfUuV/T219McdkWdEPHYs0g6/wznLv4HOcuPkdJ5Tt89MkPSdz7N0SjGpW1iZgb9tLVe4nMs6sorthKSeV2aur+hwNHf8bAULW6ifr6W5kBalqYlIPr7wrwv98z8frWP2NX0k85dvJ1LBZzLMCWm6c5kvUQ+9P+kQNH/4m8S7/jkyM/5cTZVWTlr+V07hpOZD/K0ayHyTy3hhvWI2Rk/it9g+W0duSQc+FZSqt3kH/lJY5mPczR7EdISfsxzW2ZHMt6hOvNh8m/FE9OwTOcyV/LsexHuFr2FodPPEj9jVTFs/W1tvIC1HWd3PNJbH73Pn6/9T627Lyfw0fiKavIweEYQ9O0u658AFokiKYtEAz5Yn+i0TCzXjuaFsQ/N00w6CUcniMSCRHW5gmGfGjaApq2QCgcQIsECYX8hEL+2L+FtblPx9IortiC2ZJCMOgjMDcVO14kIs9TP8fKC7Cp6TrJKU+TX7CfgUEbkchngxMrxsoLUNd1DMOQ6P44rLwAxR8VCVAoJQEKpSRAoZQEKJSSAIVSEqBQSgIUSkmAQikJUCglAQqlJEChlAQolJIAhVISoFBKAhRKSYBCKQlQKLW4AIPBoNwSL5bD4gJMSUlh586d5OXlYbPZiEQiy31i4pthcQHOz8+zadMm4uLiePTRR1m3bh2pqamUlpbicDjQdf0z+5jNZnp6ehgcHLznmDU1NbGrqmEYlJeXYxgGCwsLnDlz5p5jihVv8c8BnU4nTz31FKtXr2b16tXExcURFxfHqlWrSEhI4ODBg9jt9lhUH374IWfPnsVisbBnzx5KSkpIT08nOTmZ3t5eTp48ia7rHD16lOzsbFJTU0lJScFms3Hq1Ck0TSM9PZ3U1FTKysrYv38/Vqt12WZCKLG4AA3DoLKykscffzwW32OPPcbatWvZtWsXeXl5DA0NEYlEYgFaLBa2bNlCdXU1CQkJJCcns3fvXrq6uhgdHSUxMRGbzcaGDRt44403SExMJDs7m5ycHJKSkuju7iY+Pp6EhAQyMjJ4+eWXKSoqWtbZEF+5xQXY09MTu/K99dZbHDt2jPb29i98Ljg2NkYkEqGxsZG+vj6sViu3bt1iYmICi8XC+Pg4ra2tdHZ20tPTg9VqJRAIYLFYGBwcZGhoiO7ubsbHx2loaJDVsVa+xQWYm5tLVVUVPp8v9oviQiyCvA8olJIAhVISoFBKAhRKSYBCKQlQKCUBCqUkwOXk9Xpprm9lYWFB9amsFBLgcopGo5x5tZTUv66gYH0jtYdv0t81JHcL/d8kwOUWDoc5+XA1uaYJck0TnDD1cOgfKil6tZWGnHYm7A6i0eidO3+iBm1veujY7sOIGvj6NKIhA21OJ+zTiczrBIYjhGajNDzpun2HkDNKcDqKrt3ePrJw506haEinbbMXn03DZ9PQw3c+pQp7ovgHIxi6wUj2HPPjERamogTdUaJBHV+vRjRssDAZJeSOEvLohLw6unZnjJGcOdrf9qEFluXuJAlwuRmGQXdbLxl/0kaeaZI80+SnMY5z6r5bJP/9ZU4l5eP1emPbNzztovQnU1ieddPzUQDrplk6d/lofc2DZZ2bltdm8dwM0/q6h8i8QeHfOrn8PQdtm70Uft+Bs+r2Z+J61KDxeTfm/3RhfcVD4fedtG/zxc7t5ltebjw/y/iVBZriPXi7I1T9cgbz4y6sG29v3/p7L+UPTFH+cyfNL3noTfYzdvHOU4qQK8rQybnl+vhVAlxuc4F5Tj5QR65pgrOmUdK+08SpX9VzdXsTN6t7mPPP3XVvox41qPkPFw1Purj5tpfGeA8jOXNY1rmoeWyG5o0eGuNncdYGqfoXF2MX5rE8O0vzBg/diX7q17hxlAUBMHSDxhc8VP/7NG1verGsc2PPm48dq32Ll86dPvoOBqhb5abjXR/OiiCtr3mYKFrAst5N/5E5Gp5wUfHANLaUAPVr3Axn3xljIG2O60+60fxyBfza0TSNtOfyOfbjOgpfsVJ7rpFZ96zq0/o6kwCXk9/nxz5sR4/KHUL/TxKgUEoCFEpJgEIpCVAoJQEKpSRAoZQEKJSSAIVSiwtQ13X5nVyxHBYXoKZppL2RSuFz2TRkVDHYPYAWlm8uF1/a4h+CfR4fOb86xBXTYc796X5O/yiF4pfzsJypxTE6STQS/UyQhmEwmT+A49JQ7FvPDcPA0O/8PbCvDUM3GD3di2EY+LvdAOgRnfGcvru3v8cYYkVZfICGYTA5PEHmX33EVVM6V03pFJnSKDQdIuvPkznzi4Pkv5fN2NhYbJ+pa3b6k1oYzezFtqORzo1m+pNaaX22gtFTNjo3mWn45UUCNg+33m9mftiH5aHLzFSO4a6fZPhQJ86iYTpfr2Mko4uWdeV0vlbH4CcddGw0422bWZZZEV+ZpQV4PbOG/G99HIvv3H37yLx/L8Uv5VGbWYFz0nnXVcllnqD9hWqGM7poe66Cns0NWNeV05dopWOjmeY117jxcCEzVWM0xRUTGPBy88VqRo52M1M9jvWJEjo31TL0SQcdm8x0bDTTsr6MzlfMVP3wDJMF9176TXxtLX51rI6qm5z47gec/sFeLq7JpDLlKv1dfXetiHWv/WZvOAnc8rAw6memZpy5QR+e5im8LdN4W6aZLh/DY51i6uoIC6MB/F1u/D2zeFummSoaITQ9z1SxHc0TxFU7gbvBgbd1GueVEXRN1hBcYRb/IqTkdBFdDe3MB+ZlgSKxWPI+oFBKAhRKSYBCKQlQKCUBCqUkQKGUBCiUkgCFUhKgUEoCFEpJgEIpCVAoJQEKpSRAoZQEKJSSAIVSEqBQSgIUSkmAQikJUCglAQqlJEChlAQolJIAhVISoFBKAhRKSYBCqaWtjiXrwYglWnyAkUiE4syPqctLZ8w+LDGKxVjaQ/CIrZPSdd+jbPW3KdrwE8wH3qS16jKzrum7vpT5D4xoBD0S/sJYAz1mwq6xz90GIOJzMT9y83O3MQydOdv1L/5h7rGfHgl/es4aeiT8pccQX2hpARqGQZe5mOonv0PbWhOtT5loetJE8RPfpXTzv1F/YjddzfUsLNz+wuPJ/N0MpTzNVHEqEznvMHXtAM6iVJzFnzA/0sHosVdw1WbjMmczU57O3EAz9vQE5gesjOdsxVmaHju25pvGnvYi9iMbcBQmM5G7MxZ2eMbO6PFNuGqy8DQV4ryQhPv6eZxXU3Hkv4/jcjITee8x19eIPf0lPK0luKozmak4Fhs/NGPn1vZf4O+uYeLsNkYOP7+UqRL3tvQXIYOdLZSv/Uva1ppiEdavMXHxmR9Q+cHvqL94ipmZ20vnTpccwn5sI73vPshk7nsMpaxlJO0FHAV76N/7GzyNF3HVZDE30MxMeTpDKU8zee5dpq4doD/xEQaTfxM77kT+bjzWIuwZL2Hb9nPsh+PRvE7g9n+MibPbGT2xCT0SYjJvF6GpYfp2P8RU8QFubX+Q0bQXGD3+KoMpa5kuPcx4zlZGj//XXT+b/UgCAAFbPW5z1lKnSnzW0gKcmhznWvz9ND5h4tKv/4LSbXE0nt2Prd1KOPzZhyxvcyGOgg/wd9fivJzMTOVxvK1Xmczfjae5EEdBIt62a7gqj+O8kIS/x4zj/Pv42suZPP8+bnN2bKzQ1BCTuTuYunaQ6dI0HBeSiAYDAGjeaWaqTuC8sg/PjQIc5xMJOvqZLssgGpq/vf3FD/HcuHD7mC3FTBXtw1GQCH+4irpGceTvJtBbx0z5EZxX9i9lqsS9Le1FyJl92zGnb6O9oYJAwL+cJya+GZb2Nsy9XmgI8SXIG9FCKQlQKCUBCqUkQKGUBCiUkgCFUhKgUEoCFEpJgEIpCVAoJQEKpSRAoZQEKJSSAIVSEqBQSgIUSkmAQqn+/wVySFil3p7xgwAAAABJRU5ErkJggg==</thumbnail>
  <stage inheritance='true' id='1' name='Stage' width='480' threadsafe='false' codify='false' ternary='false' sublistIDs='false' height='360' scheduled='false' tempo='60' lines='round' costume='1'>
    <pentrails>data:image/png;base64,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</pentrails>
    <costumes>
      <list id='2'>
        <item>
          <costume center-x='240' image='data:image/png;base64,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5i97juXhrxN/ao1vfY29jPyCRN9UtIh89xRguSqXy8X0GZ/z5rvNrvr0c2CwhQ96WWj75i20f+sP9OzVjiVLZnPy5ElKSkr8njiW707SmQ3En1pDcWkah49NZ+/BUN8vFhGR7wcFWOplGAZfrltDu7fu8ovvwBHeX7jR4Z0mtOt4P+998BJffDGSw4cjsVqt3+pvwBIR+SFRgKVehw9H8nrHfyVwuIXegyy8/Z6Fth3uoVOXRwkZ2Z+IndtIT0/X74AWEblBCrDUkZaWxgsv/Rct295Bx05/5dMB77JmzTJOnz6NzWYze3giIj8ICrDUsWTJEmbOnEZsbAxFRUX6/wCLiHwLFGARERETKMAiIiImUIBFRERMoACLiIiYQAEWERExgQIsIiJiAgVYRETEBAqwiIiICRRgEREREyjAIiIiJlCARURETKAAi4iImEABFhERMYECLCIiYgIFWERExAQKsIiIiAkUYBERERMowCIiIiZQgEVEREygAIuIiJhAARYRETGBAiwiImICBVhERMQECrCIiIgJFGARERETKMAiIiImUIBFRERMoACLiIiYQAEWERExgQIsIiJiAgVYRETEBAqwiIiICRRgEREREyjAIiIiJlCARURETKAAi4iImEABFhERMYECLCIiYgIFWERExAQKsIiIiAkUYBERERMowCIiIiZQgEVEREygAIuIiJhAARYRETGBAiwiImICBVhERMQECrCIiIgJFGARERETKMAiIiImUIBFRERMoACLiIiYQAEWERExgQIsIiJiAgVYRETEBAqwiIiICRRgEREREyjAIiIiJlCARURETPC9DnBiYiKFhYUYhmH2UERERL5R3+sADxo0iObNm9O7d29WrFjBqVOnsNlsCrKIiDR63+sAV1VV0alTJ55++mmeeOIJmjdvTqtWrRgyZAhbtmzh3Llz1NbWmj1MERGRr+x7HWCA3NxcWrVqxcsvv0xAQACvvfYaL774Io8//jjPPPMMHTt2ZNy4cRw6dIicnBw8Ho/ZQxYREbmu732AAeLi4nj66adp2bIlAQEBfkurVq147rnneOyxx3jhhRd49913WbhwIbGxsZSUlGi6WkREvpcaRYABduzY4ZuCvjLCly+vvvoqTz/9NI8//jgtW7akV69ehIeHk5SURFVVldmH0WA2m41evXqRmZnZoPfn5OSwdu1a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Z7hd5G8Y4/3Hes88CrZMJC/8M9/VWfmJTWTN607WvO4U7Zrtu6KsyUzw32d4MHnhn+Gxe4/LkZ9GztJ+ZM5+j9wVA6iI33lhhwa5yweQF/4Z2Qt7kj2/B2XH1jXsQA2Dwu1TvdtcGUTZkXDywoOpOLUX8D6Rnb3gI7LmdMMaFow95+r3zC+y5572jd+eneQ7l/nrR2N43BTumFbnOIt2zfHbRuHWL7CuHlJn29caT/Geed7jWB5IVcpR8sKDKd67AAB3TQXW1UPIXtiT0kPLyfsylILNE68b4KqzUXXGenFWxJ6dVGedGT+/LSLfD402wFVVVYzs240vr3jo6lg7C1tfsTD32WYEv/gggzq9xJwvxhIZGalfSSkiIt8bjTLATqeTWZ+PYuHzzYh5w8KuVhYWP9eEUS/cR2DbR5kSEsTOiB1kZGR85fu4IiIi34VGF2CPx8PasDW8+9c7mPjcPQS++lfGfvoha1evJDk5GYfDYfYQRURErqvRBbi4uJhPen7MormziImJoby83OwhiYiIfGWNLsAiIiI/BAqwiIiICRRgEREREyjAIiIiJlCARURETKAAi4iImEABFhERMYECLCIiYgIFWERExAQKsIiIiAkUYBERERMowCIiIiZQgEVEREygAIuIiJhAARYRETGBAiwiImICBVhERMQECrCIiIgJFGARERETKMAiIiImUIBFRERMoACLiIiYQAEWERExgQIsIiJiAgVYRETEBAqwiIiICRRgEREREyjAIiIiJlCARURETKAAi4iImEABFhERMYECLCIiYgIFWERExAQKsIiIiAkUYBERERMowCIiIiZQgEVEREygAIuIiJhAARYRETGBAiwiImICBVhERMQECrCIiIgJFGARERETKMAiIiImUIBFRERMoACLiIiYQAEWERExgQIsIiJiAgVYRETEBAqwiIiICRRgEREREyjAIiIiJlCARURETKAAi4iImOD/AwZ4K44ZHQGYAAAAAElFTkSuQmCC' center-y='180' name='Stage' id='3'/>
        </item>
      </list>
    </costumes>
    <sounds>
      <list id='4'/>
    </sounds>
    <variables/>
    <blocks/>
    <scripts/>
    <sprites>
      <sprite x='-75.50171451635207' pen='tip' id='9' name='algorithmique' idx='5' rotation='1' scale='1' heading='90' draggable='true' y='149.55715614922886' hidden='true' color='119.64599999999999,130.05,0' costume='0'>
        <costumes>
          <list id='10'/>
        </costumes>
        <sounds>
          <list id='11'/>
        </sounds>
        <blocks/>
        <variables/>
        <scripts>
          <comment x='41' w='90' collapsed='false' y='10'>ALGORITHMIQUE</comment>
          <script x='43.923076923076906' y='121.15384615384588'>
            <block s='doIf'>
              <custom-block s='condition %b'>
                <l>
                  <bool>true</bool>
                </l>
              </custom-block>
              <script>
                <custom-block s='action ...'/>
              </script>
            </block>
          </script>
          <script x='198.0769230769231' y='114.69230769230776'>
            <custom-block s='condition %b'>
              <l>
                <bool>true</bool>
              </l>
            </custom-block>
          </script>
          <script x='335.2307692307693' y='120.30769230769195'>
            <block s='doIfElse'>
              <custom-block s='condition %b'>
                <l>
                  <bool>true</bool>
                </l>
              </custom-block>
              <script>
                <custom-block s='action1'/>
              </script>
              <script>
                <custom-block s='action2'/>
              </script>
            </block>
          </script>
          <script x='111.02564192782825' y='236.5384625384612'>
            <block s='reportBoolean'>
              <l>
                <bool>true</bool>
              </l>
            </block>
          </script>
          <script x='201.33333423552062' y='237.23077023076894'>
            <block s='reportBoolean'>
              <l>
                <bool>false</bool>
              </l>
            </block>
          </script>
          <comment x='136' w='90' collapsed='false' y='187'>booléens</comment>
          <comment x='233' w='136' collapsed='false' y='21'>Les structures de controle</comment>
          <script x='43.076923076923094' y='323.23076923076894'>
            <custom-block s='pour %upvar = %n à %n %cs'>
              <l>i</l>
              <block var='min'/>
              <block var='max'/>
              <script>
                <custom-block s='action ...'/>
              </script>
            </custom-block>
          </script>
          <script x='335.6153846153845' y='307.8461538461537'>
            <custom-block s='tant que %boolUE %cs'>
              <custom-block s='condition %b'>
                <l>
                  <bool>true</bool>
                </l>
              </custom-block>
              <script>
                <custom-block s='action1'/>
                <custom-block s='action2'/>
                <custom-block s='action ...'/>
              </script>
            </custom-block>
          </script>
          <script x='10' y='532.8461538461536'>
            <custom-block s='label %txt of size %n'>
              <l>ALGORITHMIQUE</l>
              <l>12</l>
            </custom-block>
          </script>
          <script x='19' y='466.8461538461536'>
            <block s='receiveGo'/>
          </script>
          <script x='441.5' y='462.3461538461536'>
            <custom-block s='fonction %n'>
              <block var='Entrée'/>
            </custom-block>
          </script>
        </scripts>
      </sprite>
      <sprite x='-163.93524741093995' pen='tip' id='60' name='Boucles2' idx='4' rotation='1' scale='1' heading='90' draggable='true' y='-117.52664179669422' hidden='true' color='206.55,86.75100000000002,0' costume='0'>
        <costumes>
          <list id='61'/>
        </costumes>
        <sounds>
          <list id='62'/>
        </sounds>
        <blocks/>
        <variables/>
        <scripts>
          <script x='16.769230769230774' y='525.2307692307687'>
            <block s='doDeclareVariables'>
              <list>
                <l>nombre rebonds</l>
                <l>hauteur</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='nombre rebonds'/>
              <l>0</l>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='hauteur'/>
              <l>300</l>
            </custom-block>
            <custom-block s='tant que %boolUE %cs'>
              <block s='reportGreaterThan'>
                <block var='hauteur'/>
                <l>100</l>
              </block>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='nombre rebonds'/>
                  <block s='reportSum'>
                    <block var='nombre rebonds'/>
                    <l>1</l>
                  </block>
                </custom-block>
                <custom-block s='%anyUE ← %s'>
                  <block var='hauteur'/>
                  <block s='reportProduct'>
                    <l>0.9</l>
                    <block var='hauteur'/>
                  </block>
                </custom-block>
              </script>
            </custom-block>
            <block s='doShowVar'>
              <l>nombre rebonds</l>
            </block>
          </script>
          <script x='279.9230769230769' y='569.3076923076918'>
            <custom-block s='algo19 %n'>
              <l>300</l>
              <comment collapsed='false' w='90'>Renvoie le nombre de rebonds nécessaires à la balle pour passer en dessous de la hauteur 100.</comment>
            </custom-block>
          </script>
          <script x='251' y='706.2307692307692'>
            <block s='receiveGo'/>
          </script>
          <comment x='391.0769230769231' w='90' collapsed='false' y='521.5384615384611'>Algorithme 19</comment>
          <script x='24' y='336.923076923077'>
            <block s='doDeclareVariables'>
              <list>
                <l>N</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='N'/>
              <l>1</l>
            </custom-block>
            <custom-block s='tant que %boolUE %cs'>
              <block s='reportLessThan'>
                <custom-block s='%n ^ %n'>
                  <l>2</l>
                  <block var='N'/>
                </custom-block>
                <l>10000</l>
              </block>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='N'/>
                  <block s='reportSum'>
                    <block var='N'/>
                    <l>1</l>
                  </block>
                </custom-block>
              </script>
            </custom-block>
            <block s='doShowVar'>
              <l>N</l>
            </block>
          </script>
          <script x='252.0769230769231' y='414.076923076923'>
            <custom-block s='algo18'>
              <comment collapsed='false' w='122.3076923076923'>Renvoie le premier entier naturel N à partir duquel 2^N ≥ 10 000</comment>
            </custom-block>
          </script>
          <comment x='263.69230769230774' w='90' collapsed='false' y='337.3076923076924'>Algorithme 18</comment>
          <script x='337.6923076923076' y='387.2307692307701'>
            <block s='reportNewList'>
              <list>
                <custom-block s='%n ^ %n'>
                  <l>2</l>
                  <l>13</l>
                </custom-block>
                <custom-block s='%n ^ %n'>
                  <l>2</l>
                  <l>14</l>
                </custom-block>
              </list>
            </block>
          </script>
          <script x='355.2307692307693' y='291.76923076923015'>
            <custom-block s='%n ^ %n'>
              <l>2</l>
              <l>10</l>
              <comment collapsed='false' w='90'>Définition récursive de la fonction puissance.</comment>
            </custom-block>
          </script>
          <script x='24' y='146.00000000000006'>
            <block s='doDeclareVariables'>
              <list>
                <l>montant</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='montant'/>
              <l>2500</l>
            </custom-block>
            <custom-block s='tant que %boolUE %cs'>
              <block s='reportNot'>
                <block s='reportLessThan'>
                  <block var='montant'/>
                  <l>110</l>
                </block>
              </block>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='montant'/>
                  <block s='reportDifference'>
                    <block var='montant'/>
                    <l>110</l>
                  </block>
                </custom-block>
              </script>
            </custom-block>
            <block s='doShowVar'>
              <l>montant</l>
            </block>
          </script>
          <script x='306' y='236.00000000000028'>
            <custom-block s='algo17 %n'>
              <l>2500</l>
            </custom-block>
          </script>
          <comment x='317' w='90' collapsed='false' y='164.0000000000001'>Algorithme 17</comment>
          <comment x='20' w='90' collapsed='false' y='10'>ALGORITHMIQUE</comment>
          <comment x='149' w='100' collapsed='false' y='23'>Boucles de niveau II</comment>
          <comment x='296' w='133' collapsed='false' y='21'>Transformer les algorithmes 17 à 19 en fonctions.</comment>
          <script x='270' y='753.2307692307692'>
            <custom-block s='label %txt of size %n'>
              <l>Boucles de niveau II</l>
              <l>12</l>
            </custom-block>
          </script>
        </scripts>
      </sprite>
      <sprite x='-166.93524741093916' pen='tip' id='170' name='Conditions' idx='3' rotation='1' scale='1' heading='90' draggable='true' y='-14.526641796694097' hidden='true' color='181.04999999999998,0,152.08199999999997' costume='0'>
        <costumes>
          <list id='171'/>
        </costumes>
        <sounds>
          <list id='172'/>
        </sounds>
        <blocks/>
        <variables/>
        <scripts>
          <script x='12' y='747.9999999999991'>
            <block s='doDeclareVariables'>
              <list>
                <l>x</l>
                <l>y</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <block s='reportRandom'>
                <l>1</l>
                <l>10</l>
              </block>
            </custom-block>
            <block s='doIf'>
              <block s='reportNot'>
                <block s='reportEquals'>
                  <block var='x'/>
                  <l>1</l>
                </block>
              </block>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='y'/>
                  <block s='reportQuotient'>
                    <l>1</l>
                    <block s='reportDifference'>
                      <block var='x'/>
                      <l>1</l>
                    </block>
                  </block>
                </custom-block>
                <block s='doShowVar'>
                  <l>y</l>
                </block>
              </script>
            </block>
          </script>
          <script x='246' y='873.9999999999991'>
            <block s='receiveGo'/>
          </script>
          <comment x='314' w='90' collapsed='false' y='744.9999999999989'>Algorithme 16</comment>
          <script x='335.61538461538464' y='807.9999999999989'>
            <custom-block s='algo16 %n'>
              <l>2</l>
              <comment collapsed='false' w='92.3076923076923'>Renvoie 1/(x-1) pour x différent de1.</comment>
            </custom-block>
          </script>
          <script x='21' y='505.999999999999'>
            <block s='doDeclareVariables'>
              <list>
                <l>A</l>
                <l>B</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='A'/>
              <l>1</l>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='B'/>
              <l>3</l>
            </custom-block>
            <block s='doIf'>
              <block s='reportGreaterThan'>
                <block var='A'/>
                <l>0</l>
              </block>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='A'/>
                  <block s='reportSum'>
                    <block var='A'/>
                    <l>1</l>
                  </block>
                </custom-block>
              </script>
            </block>
            <block s='doIf'>
              <block s='reportGreaterThan'>
                <block var='B'/>
                <l>4</l>
              </block>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='B'/>
                  <block s='reportDifference'>
                    <block var='B'/>
                    <l>1</l>
                  </block>
                </custom-block>
              </script>
            </block>
          </script>
          <comment x='272' w='90' collapsed='false' y='514.9999999999984'>Algorithme 15</comment>
          <script x='260.00000000000006' y='597.9999999999987'>
            <custom-block s='algo15 %n %n'>
              <l>2</l>
              <l>6</l>
            </custom-block>
          </script>
          <script x='25' y='294.0000000000002'>
            <block s='doDeclareVariables'>
              <list>
                <l>x</l>
                <l>y</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <block s='reportRandom'>
                <l>1</l>
                <l>10</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='y'/>
              <block s='reportRandom'>
                <l>1</l>
                <l>10</l>
              </block>
            </custom-block>
            <block s='doIfElse'>
              <block s='reportGreaterThan'>
                <block var='x'/>
                <block var='y'/>
              </block>
              <script>
                <block s='doShowVar'>
                  <l>x</l>
                </block>
              </script>
              <script>
                <block s='doShowVar'>
                  <l>y</l>
                </block>
              </script>
            </block>
          </script>
          <comment x='323' w='90' collapsed='false' y='311.00000000000034'>Algorithme 14</comment>
          <script x='311.46153846153845' y='391.00000000000045'>
            <custom-block s='algo14 %n %n'>
              <l>5</l>
              <l>8</l>
              <comment collapsed='false' w='90'>rapporte le plus grand des 2 nombres x et y</comment>
            </custom-block>
          </script>
          <script x='283.53846153846155' y='216.76923076923094'>
            <custom-block s='algo13 %n'>
              <l>5</l>
            </custom-block>
          </script>
          <script x='269.8461538461538' y='184.84615384615392'>
            <custom-block s='algo13b %n'>
              <l>4</l>
            </custom-block>
          </script>
          <script x='32' y='113'>
            <block s='doDeclareVariables'>
              <list>
                <l>x</l>
                <l>racine</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <block s='reportRandom'>
                <l>-10</l>
                <l>10</l>
              </block>
            </custom-block>
            <block s='doIf'>
              <block s='reportOr'>
                <block s='reportGreaterThan'>
                  <block var='x'/>
                  <l>0</l>
                </block>
                <block s='reportEquals'>
                  <block var='x'/>
                  <l>0</l>
                </block>
              </block>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='racine'/>
                  <block s='reportMonadic'>
                    <l>
                      <option>sqrt</option>
                    </l>
                    <block var='x'/>
                  </block>
                </custom-block>
                <block s='doShowVar'>
                  <l>racine</l>
                </block>
              </script>
            </block>
          </script>
          <comment x='317' w='90' collapsed='false' y='104'>Algorithme 13</comment>
          <script x='458.46153846153845' y='214.05128205128233'>
            <custom-block s='%n ≥ %n'>
              <l>4</l>
              <l>3</l>
            </custom-block>
          </script>
          <script x='447.7692307692307' y='177.2307692307694'>
            <custom-block s='%n ≤ %n'>
              <l>4</l>
              <l>3</l>
            </custom-block>
          </script>
          <comment x='446.1538461538462' w='90' collapsed='false' y='111.92307692307702'>Programmation d&apos;un booléen</comment>
          <comment x='294' w='137' collapsed='false' y='22'>Transformer les algorithmes 13 à 16 en fonctions.</comment>
          <comment x='162' w='90' collapsed='false' y='21'>Conditions</comment>
          <comment x='20' w='90' collapsed='false' y='10'>ALGORITHMIQUE</comment>
          <script x='275' y='920.9999999999991'>
            <custom-block s='label %txt of size %n'>
              <l>Conditions</l>
              <l>12</l>
            </custom-block>
          </script>
        </scripts>
      </sprite>
      <sprite x='-169.7352352039062' pen='tip' id='328' name='Variables' idx='1' rotation='1' scale='1' heading='90' draggable='true' y='72.47335820330598' hidden='true' color='80,80,80' costume='0'>
        <costumes>
          <list id='329'/>
        </costumes>
        <sounds>
          <list id='330'/>
        </sounds>
        <blocks/>
        <variables/>
        <scripts>
          <script x='24.230769230769226' y='1268.6666666666717'>
            <block s='doDeclareVariables'>
              <list>
                <l>racine</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='racine'/>
              <block s='reportMonadic'>
                <l>
                  <option>sqrt</option>
                </l>
                <l>1</l>
              </block>
            </custom-block>
            <block s='doShowVar'>
              <l>racine</l>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='racine'/>
              <block s='reportMonadic'>
                <l>
                  <option>sqrt</option>
                </l>
                <l>2</l>
              </block>
            </custom-block>
            <block s='doShowVar'>
              <l>racine</l>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='racine'/>
              <block s='reportMonadic'>
                <l>
                  <option>sqrt</option>
                </l>
                <l>3</l>
              </block>
            </custom-block>
            <block s='doShowVar'>
              <l>racine</l>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='racine'/>
              <block s='reportMonadic'>
                <l>
                  <option>sqrt</option>
                </l>
                <l>4</l>
              </block>
            </custom-block>
            <block s='doShowVar'>
              <l>racine</l>
            </block>
          </script>
          <script x='351.1538461538462' y='1312.2051282051314'>
            <custom-block s='algo9 √ %n ='>
              <l>2</l>
              <comment collapsed='false' w='90'>Renvoie la racine carré d&apos;un nombre</comment>
            </custom-block>
          </script>
          <comment x='239.23076923076928' w='90' collapsed='false' y='1268.6666666666722'>Algorithme 9</comment>
          <script x='25.230769230769226' y='1107.6666666666702'>
            <block s='doDeclareVariables'>
              <list>
                <l>largeur</l>
                <l>longueur</l>
                <l>aire</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='largeur'/>
              <block s='reportRandom'>
                <l>1</l>
                <l>10</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='longueur'/>
              <block s='reportRandom'>
                <l>1</l>
                <l>10</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='aire'/>
              <block s='reportProduct'>
                <block var='largeur'/>
                <block var='longueur'/>
              </block>
            </custom-block>
            <block s='doShowVar'>
              <l>aire</l>
            </block>
          </script>
          <comment x='367.2307692307693' w='90' collapsed='false' y='1112.6666666666702'>Algorithme 8</comment>
          <script x='27.230769230769226' y='975.6666666666683'>
            <block s='doDeclareVariables'>
              <list>
                <l>prixenfrancs</l>
                <l>prixeneuros</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='prixenfrancs'/>
              <block s='reportRandom'>
                <l>1</l>
                <l>10</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='prixeneuros'/>
              <block s='reportQuotient'>
                <block var='prixenfrancs'/>
                <l>6.55957</l>
              </block>
            </custom-block>
            <block s='doShowVar'>
              <l>prixeneuros</l>
            </block>
          </script>
          <script x='341.2307692307693' y='1029.6666666666686'>
            <custom-block s='algo7 %n'>
              <l>7</l>
              <comment collapsed='false' w='114'>Renvoie le prix en euros</comment>
            </custom-block>
          </script>
          <comment x='406' w='90' collapsed='false' y='976.358974358976'>Algorithme 7</comment>
          <script x='29.230769230769226' y='796.6666666666654'>
            <block s='doDeclareVariables'>
              <list>
                <l>A</l>
                <l>B</l>
                <l>C</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='A'/>
              <l>5</l>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='B'/>
              <l>3</l>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='C'/>
              <block s='reportSum'>
                <block var='A'/>
                <block var='B'/>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='B'/>
              <block s='reportSum'>
                <block var='B'/>
                <block var='A'/>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='A'/>
              <block var='C'/>
            </custom-block>
          </script>
          <script x='163.61538461538464' y='896.512820512821'>
            <custom-block s='algo6a %n %n'>
              <l>5</l>
              <l>3</l>
              <comment collapsed='false' w='90'>Erreur possible</comment>
            </custom-block>
          </script>
          <script x='166.23076923076923' y='843.6666666666667'>
            <custom-block s='algo6 %n %n'>
              <l>5</l>
              <l>3</l>
              <comment collapsed='false' w='90'>Erreur possible</comment>
            </custom-block>
          </script>
          <script x='418.53846153846155' y='858.5128205128212'>
            <custom-block s='algo6b %n %n'>
              <l>5</l>
              <l>3</l>
            </custom-block>
          </script>
          <script x='419.30769230769226' y='890.6410256410268'>
            <custom-block s='algo6c %n %n'>
              <l>5</l>
              <l>3</l>
            </custom-block>
          </script>
          <comment x='365.69230769230774' w='90' collapsed='false' y='795.6666666666661'>Algorithme 6</comment>
          <script x='26.230769230769226' y='660.6666666666655'>
            <block s='doDeclareVariables'>
              <list>
                <l>x</l>
                <l>z</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <block s='reportRandom'>
                <l>1</l>
                <l>10</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='z'/>
              <block s='reportSum'>
                <block s='reportProduct'>
                  <l>-3</l>
                  <block var='x'/>
                </block>
                <l>2</l>
              </block>
            </custom-block>
            <block s='doShowVar'>
              <l>z</l>
            </block>
          </script>
          <script x='258.2307692307692' y='724.6666666666652'>
            <custom-block s='algo5 %n'>
              <l>3</l>
              <comment collapsed='false' w='90'>Renvoie -3x+2</comment>
            </custom-block>
          </script>
          <comment x='360.2307692307693' w='90' collapsed='false' y='663.666666666665'>Algorithme 5</comment>
          <script x='26.230769230769226' y='492.6666666666664'>
            <block s='doDeclareVariables'>
              <list>
                <l>x</l>
                <l>y</l>
                <l>z</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <block s='reportRandom'>
                <l>1</l>
                <l>10</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='y'/>
              <block s='reportDifference'>
                <block var='x'/>
                <l>2</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='z'/>
              <block s='reportDifference'>
                <block s='reportProduct'>
                  <l>-3</l>
                  <block var='y'/>
                </block>
                <l>4</l>
              </block>
            </custom-block>
            <block s='doShowVar'>
              <l>z</l>
            </block>
          </script>
          <script x='272.2307692307692' y='571.6666666666653'>
            <custom-block s='algo4 %n'>
              <l>2</l>
              <comment collapsed='false' w='90'>Renvoie -3(x-2)-4</comment>
            </custom-block>
          </script>
          <comment x='306.23076923076917' w='90' collapsed='false' y='501.6666666666654'>Algorithme 4</comment>
          <script x='26.230769230769226' y='349.66666666666697'>
            <block s='doDeclareVariables'>
              <list>
                <l>x</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <l>2</l>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <block s='reportSum'>
                <block var='x'/>
                <l>1</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <block s='reportProduct'>
                <l>4</l>
                <block var='x'/>
              </block>
            </custom-block>
          </script>
          <script x='188.69230769230768' y='388.58974358974456'>
            <custom-block s='algo3 %n'>
              <l>2</l>
              <comment collapsed='false' w='90'>Renvoie 4(x+1)</comment>
            </custom-block>
          </script>
          <comment x='400.53846153846155' w='90' collapsed='false' y='346.66666666666765'>Algorithme 3</comment>
          <script x='27.230769230769226' y='238.66666666666777'>
            <block s='doDeclareVariables'>
              <list>
                <l>x</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <l>2</l>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <block s='reportSum'>
                <block var='x'/>
                <l>1</l>
              </block>
            </custom-block>
          </script>
          <script x='194.23076923076923' y='257.66666666666765'>
            <custom-block s='algo2 %n'>
              <l>2</l>
              <comment collapsed='false' w='90'>Incrémentation</comment>
            </custom-block>
          </script>
          <comment x='401.0769230769231' w='90' collapsed='false' y='251.6666666666672'>Algorithme 2</comment>
          <script x='31.230769230769226' y='105.66666666666717'>
            <block s='doDeclareVariables'>
              <list>
                <l>x</l>
                <l>y</l>
                <l>z</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='x'/>
              <l>2</l>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='y'/>
              <l>3</l>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='z'/>
              <block s='reportSum'>
                <block var='x'/>
                <block var='y'/>
              </block>
            </custom-block>
          </script>
          <script x='182.23076923076923' y='135.66666666666774'>
            <custom-block s='algo1 %n %n'>
              <l>3</l>
              <l>2</l>
              <comment collapsed='false' w='90'>Renvoie la somme des 2 nombres.</comment>
            </custom-block>
          </script>
          <comment x='425.1538461538462' w='90' collapsed='false' y='133.97435897435966'>Algorithme 1</comment>
          <comment x='323' w='130' collapsed='false' y='30'>Transformer les algorithmes 1 à 9 en fonctions.</comment>
          <comment x='24' w='90' collapsed='false' y='10'>ALGORITHMIQUE</comment>
          <script x='283' y='1446.666666666672'>
            <block s='receiveGo'/>
          </script>
          <comment x='169' w='90' collapsed='false' y='25'>Les variables</comment>
          <script x='298' y='1501.666666666672'>
            <block s='clear'/>
            <custom-block s='label %txt of size %n'>
              <l>Variables</l>
              <l>12</l>
            </custom-block>
          </script>
          <script x='352.8461538461538' y='1175.5128205128249'>
            <custom-block s='algo8 %n %n'>
              <l>2</l>
              <l>5</l>
              <comment collapsed='false' w='90'>Renvoie l&apos;aire</comment>
            </custom-block>
          </script>
          <script x='252.15384615384625' y='1381.5897435897455'>
            <custom-block s='map %repRing over %l'>
              <block s='reifyReporter'>
                <autolambda>
                  <custom-block s='algo9 √ %n ='>
                    <l/>
                  </custom-block>
                </autolambda>
                <list/>
              </block>
              <custom-block s='numbers from %n to %n'>
                <l>1</l>
                <l>4</l>
              </custom-block>
              <comment collapsed='false' w='90'>Renvoie la racine carré des nombres d&apos;une liste</comment>
            </custom-block>
          </script>
        </scripts>
      </sprite>
      <sprite x='42.66476250727385' pen='tip' id='591' name='Boucles1' idx='2' rotation='1' scale='1' heading='90' draggable='true' y='31.473358203305864' hidden='true' color='169.83000000000007,0,229.5' costume='0'>
        <costumes>
          <list id='592'/>
        </costumes>
        <sounds>
          <list id='593'/>
        </sounds>
        <blocks/>
        <variables/>
        <scripts>
          <script x='13' y='449.0000000000002'>
            <block s='doDeclareVariables'>
              <list>
                <l>n</l>
                <l>somme</l>
              </list>
            </block>
            <custom-block s='%anyUE ← %s'>
              <block var='somme'/>
              <l>0</l>
            </custom-block>
            <custom-block s='pour %upvar = %n à %n %cs'>
              <l>n</l>
              <l>1</l>
              <l>10</l>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='somme'/>
                  <block s='reportSum'>
                    <block var='somme'/>
                    <block s='reportQuotient'>
                      <l>1</l>
                      <block var='n'/>
                    </block>
                  </block>
                </custom-block>
              </script>
            </custom-block>
            <block s='doShowVar'>
              <l>somme</l>
            </block>
          </script>
          <script x='275.0769230769231' y='506.5384615384596'>
            <custom-block s='combine with %repRing items of %l'>
              <block s='reifyReporter'>
                <autolambda>
                  <block s='reportSum'>
                    <l/>
                    <l/>
                  </block>
                </autolambda>
                <list/>
              </block>
              <custom-block s='map %repRing over %l'>
                <block s='reifyReporter'>
                  <autolambda>
                    <block s='reportQuotient'>
                      <l>1</l>
                      <l/>
                    </block>
                  </autolambda>
                  <list/>
                </block>
                <custom-block s='numbers from %n to %n'>
                  <l>1</l>
                  <l>10</l>
                </custom-block>
              </custom-block>
              <comment collapsed='false' w='138.46153846153845'>Somme des inverses des entiers naturels de 1 à 10.</comment>
            </custom-block>
          </script>
          <script x='268' y='445.99999999999886'>
            <custom-block s='algo12 %n %n'>
              <l>1</l>
              <l>10</l>
              <comment collapsed='false' w='138.46153846153845'>Somme des inverses des entiers naturels de 1 à 10.</comment>
            </custom-block>
          </script>
          <script x='219.23076923076923' y='483.0769230769213'>
            <custom-block s='algo12a %n %n'>
              <l>1</l>
              <l>10</l>
            </custom-block>
          </script>
          <comment x='427.0769230769231' w='90' collapsed='false' y='396.2307692307695'>Algorithme 12</comment>
          <script x='18' y='299.00000000000045'>
            <block s='doDeclareVariables'>
              <list>
                <l>n</l>
                <l>produit</l>
              </list>
            </block>
            <custom-block s='pour %upvar = %n à %n %cs'>
              <l>n</l>
              <l>1</l>
              <l>10</l>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='produit'/>
                  <block s='reportProduct'>
                    <l>8</l>
                    <block var='n'/>
                  </block>
                </custom-block>
                <block s='doShowVar'>
                  <l>produit</l>
                </block>
              </script>
            </custom-block>
          </script>
          <script x='243.00000000000006' y='376.00000000000045'>
            <custom-block s='algo11b %n %n'>
              <l>1</l>
              <l>10</l>
            </custom-block>
          </script>
          <script x='250.8461538461538' y='326.15384615384664'>
            <custom-block s='algo11a %n %n'>
              <l>1</l>
              <l>10</l>
              <comment collapsed='false' w='76.92307692307692'>Multiples de 8 de 8 à 80</comment>
            </custom-block>
          </script>
          <comment x='436.46153846153845' w='90' collapsed='false' y='283.92307692307736'>Algorithme 11</comment>
          <script x='21' y='125'>
            <block s='doDeclareVariables'>
              <list>
                <l>n</l>
                <l>racine</l>
              </list>
            </block>
            <custom-block s='pour %upvar = %n à %n %cs'>
              <l>n</l>
              <l>1</l>
              <l>50</l>
              <script>
                <custom-block s='%anyUE ← %s'>
                  <block var='racine'/>
                  <block s='reportMonadic'>
                    <l>
                      <option>sqrt</option>
                    </l>
                    <block var='n'/>
                  </block>
                </custom-block>
                <block s='doShowVar'>
                  <l>racine</l>
                </block>
              </script>
            </custom-block>
          </script>
          <script x='289' y='194.0000000000005'>
            <custom-block s='algo10 %n %n'>
              <l>1</l>
              <l>50</l>
              <comment collapsed='false' w='90'>Racine des entiers naturels de 1 à 50.</comment>
            </custom-block>
          </script>
          <comment x='279' w='90' collapsed='false' y='117.00000000000011'>Algorithme 10 </comment>
          <script x='402.0769230769231' y='156.6923076923082'>
            <custom-block s='algo10a %n %n'>
              <l>1</l>
              <l>50</l>
            </custom-block>
          </script>
          <comment x='15' w='90' collapsed='false' y='10'>ALGORITHMIQUE</comment>
          <script x='245' y='586.0000000000002'>
            <block s='receiveGo'/>
          </script>
          <comment x='301' w='135' collapsed='false' y='25'>Transformer les algorihtmes 10 à 12 en fonctions.</comment>
          <comment x='164' w='90' collapsed='false' y='18'>Boucles de niveau I</comment>
          <script x='263' y='636.0000000000002'>
            <custom-block s='label %txt of size %n'>
              <l>Boucles de niveau I</l>
              <l>12</l>
            </custom-block>
          </script>
        </scripts>
      </sprite>
      <watcher x='0.017221236813725227' color='243,118,29' style='normal' hidden='true' y='0.01722123681370391' var='min'/>
      <watcher x='0.017221236813725227' color='243,118,29' style='normal' hidden='true' y='0.06302973018242852' var='max'/>
      <watcher x='0.017221236813725227' color='243,118,29' style='normal' hidden='true' y='0.1088382235511105' var='x'/>
      <watcher x='0.017221236813725227' color='243,118,29' style='normal' hidden='true' y='0.154646716919828' var='N'/>
      <watcher x='3.8452690972221717' color='243,118,29' style='normal' hidden='true' y='3.8452690972222214' var='Entrée'/>
    </sprites>
  </stage>
  <hidden/>
  <headers/>
  <code/>
  <blocks>
    <block-definition s='%&apos;f&apos; ← %&apos;operateur&apos;' category='variables' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%anyUE'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doRun'>
          <block s='reifyScript'>
            <script>
              <block s='doSetVar'>
                <l/>
                <block var='operateur'/>
              </block>
            </script>
            <list/>
          </block>
          <list>
            <block var='f'/>
          </list>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo1 %&apos;x&apos; %&apos;y&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportSum'>
            <block var='x'/>
            <block var='y'/>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo2 %&apos;x&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportSum'>
            <block var='x'/>
            <l>1</l>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo3 %&apos;x&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportProduct'>
            <l>4</l>
            <block s='reportSum'>
              <block var='x'/>
              <l>1</l>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo4 %&apos;x&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportDifference'>
            <block s='reportProduct'>
              <l>-3</l>
              <block s='reportDifference'>
                <block var='x'/>
                <l>2</l>
              </block>
            </block>
            <l>4</l>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo5 %&apos;x&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportSum'>
            <block s='reportProduct'>
              <l>-3</l>
              <block var='x'/>
            </block>
            <l>2</l>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo6a %&apos;A&apos; %&apos;B&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <custom-block s='%anyUE ← %s'>
          <block var='A'/>
          <block s='reportSum'>
            <block var='A'/>
            <block var='B'/>
          </block>
        </custom-block>
        <custom-block s='%anyUE ← %s'>
          <block var='B'/>
          <block s='reportSum'>
            <block var='B'/>
            <block var='A'/>
          </block>
        </custom-block>
        <block s='doReport'>
          <block s='reportNewList'>
            <list>
              <block var='A'/>
              <block var='B'/>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo7 %&apos;prixenfrancs&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportQuotient'>
            <block var='prixenfrancs'/>
            <l>6.55957</l>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo8 %&apos;largeur&apos; %&apos;longueur&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportProduct'>
            <block var='largeur'/>
            <block var='longueur'/>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo9 √ %&apos;racine&apos; =' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportMonadic'>
            <l>
              <option>sqrt</option>
            </l>
            <block var='racine'/>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='label %&apos;text&apos; of size %&apos;size&apos;' category='pen' type='command'>
      <comment x='0' w='90' collapsed='false' y='0'>LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment>
      <header/>
      <code/>
      <translations>de:drucke _ in Größe _ca:etiqueta _ de mida _es:etiqueta _ de tamaño _fr:étiquette _ d&apos;une taille de _</translations>
      <inputs>
        <input type='%txt'>Hello!</input>
        <input type='%n'>12</input>
      </inputs>
      <script>
        <block s='doRun'>
          <block s='reportJSFunction'>
            <list>
              <l>text</l>
              <l>size</l>
            </list>
            <l>var stage = this.parentThatIsA(StageMorph),    context = stage.penTrails().getContext(&apos;2d&apos;),    rotation = radians(this.direction() - 90),    trans = new Point(      this.center().x - stage.left(),      this.center().y - stage.top()    ),    isWarped = this.Warped,    len,    pos;if (isWarped) {endWarp(); }context.save();context.font = size + &apos;px monospace&apos;;context.textAlign = &apos;left&apos;;context.textBaseline = &apos;alphabetic&apos;;context.fillStyle = this.color.toString();len = context.measureText(text).width;trans = trans.multiplyBy(1 / stage.scale);context.translate(trans.x, trans.y);context.rotate(rotation);context.fillText(text, 0, 0);context.translate(-trans.x, -trans.y);context.restore();pos = new Point(  len * Math.sin(radians(this.direction())),  len * Math.cos(radians(this.direction())));pos = pos.add(new Point(this.xPosition(), this.yPosition()));this.gotoXY(pos.x, pos.y, false);this.changed();if (isWarped) {this.startWarp(); }stage.changed();</l>
          </block>
          <list>
            <block var='text'/>
            <block var='size'/>
          </list>
        </block>
      </script>
    </block-definition>
    <block-definition s='empty? %&apos;data&apos;' category='lists' type='predicate'>
      <header/>
      <code/>
      <translations>de:ist _ leer?ca:_ buida?es:_ vacía?fr:_ vide?</translations>
      <inputs>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportEquals'>
            <block var='data'/>
            <block s='reportNewList'>
              <list/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='keep items such that %&apos;pred&apos; from %&apos;data&apos;' category='lists' type='reporter'>
      <header/>
      <code/>
      <translations>de:behalte Elemente, die _ aus _ca:manté els elements on _ de _es:mantener los elementos donde _ de _fr:garder les items tels que _ de _</translations>
      <inputs>
        <input type='%predRing'/>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doIf'>
          <custom-block s='empty? %l'>
            <block var='data'/>
          </custom-block>
          <script>
            <block s='doReport'>
              <block s='reportNewList'>
                <list/>
              </block>
            </block>
          </script>
        </block>
        <block s='doIfElse'>
          <block s='evaluate'>
            <block var='pred'/>
            <list>
              <block s='reportListItem'>
                <l>1</l>
                <block var='data'/>
              </block>
            </list>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportCONS'>
                <block s='reportListItem'>
                  <l>1</l>
                  <block var='data'/>
                </block>
                <custom-block s='keep items such that %predRing from %l'>
                  <block var='pred'/>
                  <block s='reportCDR'>
                    <block var='data'/>
                  </block>
                </custom-block>
              </block>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <custom-block s='keep items such that %predRing from %l'>
                <block var='pred'/>
                <block s='reportCDR'>
                  <block var='data'/>
                </block>
              </custom-block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='combine with %&apos;function&apos; items of %&apos;data&apos;' category='lists' type='reporter'>
      <header/>
      <code/>
      <translations>de:kombiniere mit _ die Elemente von _ca:combina amb _ els elements de _es:combinar con _ los elementos de _fr:combine avec _ les items de _</translations>
      <inputs>
        <input type='%repRing'/>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doIf'>
          <custom-block s='empty? %l'>
            <block s='reportCDR'>
              <block var='data'/>
            </block>
          </custom-block>
          <script>
            <block s='doReport'>
              <block s='reportListItem'>
                <l>1</l>
                <block var='data'/>
              </block>
            </block>
          </script>
        </block>
        <block s='doReport'>
          <block s='evaluate'>
            <block var='function'/>
            <list>
              <block s='reportListItem'>
                <l>1</l>
                <block var='data'/>
              </block>
              <custom-block s='combine with %repRing items of %l'>
                <block var='function'/>
                <block s='reportCDR'>
                  <block var='data'/>
                </block>
              </custom-block>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;' category='control' type='reporter'>
      <header/>
      <code/>
      <translations>de:wenn _ dann _ sonst _ca:si _ llavors _ si no _es:si _ entonces _ sino _fr:si _ alors _ sinon _</translations>
      <inputs>
        <input type='%b'/>
        <input type='%anyUE'/>
        <input type='%anyUE'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block var='test'/>
          <script>
            <block s='doReport'>
              <block s='evaluate'>
                <block var='true'/>
                <list/>
              </block>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block s='evaluate'>
                <block var='false'/>
                <list/>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='pour %&apos;i&apos; = %&apos;start&apos; à %&apos;end&apos; %&apos;action&apos;' category='control' type='command'>
      <header/>
      <code/>
      <translations>de:für _ = _ bis _ _ca:per _ = _ fins _ _es:para _ = _ hasta _ _fr:pour _ allant de _ à _ _</translations>
      <inputs>
        <input type='%upvar'/>
        <input type='%n'>1</input>
        <input type='%n'>10</input>
        <input type='%cs'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>step</l>
            <l>tester</l>
          </list>
        </block>
        <block s='doIfElse'>
          <block s='reportGreaterThan'>
            <block var='start'/>
            <block var='end'/>
          </block>
          <script>
            <block s='doSetVar'>
              <l>step</l>
              <l>-1</l>
            </block>
            <block s='doSetVar'>
              <l>tester</l>
              <block s='reifyReporter'>
                <autolambda>
                  <block s='reportLessThan'>
                    <block var='i'/>
                    <block var='end'/>
                  </block>
                </autolambda>
                <list/>
              </block>
            </block>
          </script>
          <script>
            <block s='doSetVar'>
              <l>step</l>
              <l>1</l>
            </block>
            <block s='doSetVar'>
              <l>tester</l>
              <block s='reifyReporter'>
                <autolambda>
                  <block s='reportGreaterThan'>
                    <block var='i'/>
                    <block var='end'/>
                  </block>
                </autolambda>
                <list/>
              </block>
            </block>
          </script>
        </block>
        <block s='doSetVar'>
          <l>i</l>
          <block var='start'/>
        </block>
        <block s='doUntil'>
          <block s='evaluate'>
            <block var='tester'/>
            <list/>
          </block>
          <script>
            <block s='doRun'>
              <block var='action'/>
              <list/>
            </block>
            <block s='doChangeVar'>
              <l>i</l>
              <block var='step'/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='join words %&apos;words&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations>de:füge Wörter zusammen _ca:uneix les paraules _es:unir las palabras _fr:fusionne les mots _</translations>
      <inputs>
        <input type='%mult%txt'/>
      </inputs>
      <script>
        <block s='doIf'>
          <custom-block s='empty? %l'>
            <block s='reportCDR'>
              <block var='words'/>
            </block>
          </custom-block>
          <script>
            <block s='doReport'>
              <block s='reportListItem'>
                <l>1</l>
                <block var='words'/>
              </block>
            </block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportEquals'>
            <l/>
            <block s='reportListItem'>
              <l>1</l>
              <block var='words'/>
            </block>
          </block>
          <script>
            <block s='doReport'>
              <custom-block s='join words %mult%txt'>
                <block s='reportCDR'>
                  <block var='words'/>
                </block>
              </custom-block>
            </block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportEquals'>
            <l/>
            <block s='reportListItem'>
              <l>2</l>
              <block var='words'/>
            </block>
          </block>
          <script>
            <block s='doReport'>
              <custom-block s='join words %mult%txt'>
                <block s='reportCONS'>
                  <block s='reportListItem'>
                    <l>1</l>
                    <block var='words'/>
                  </block>
                  <block s='reportCDR'>
                    <block s='reportCDR'>
                      <block var='words'/>
                    </block>
                  </block>
                </block>
              </custom-block>
            </block>
          </script>
        </block>
        <block s='doReport'>
          <block s='reportJoinWords'>
            <list>
              <block s='reportListItem'>
                <l>1</l>
                <block var='words'/>
              </block>
              <l/>
              <custom-block s='join words %mult%txt'>
                <block s='reportCDR'>
                  <block var='words'/>
                </block>
              </custom-block>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='list $arrowRight sentence %&apos;data&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations>de:Liste $arrowRight Satz _ca:llista $arrowRight frase _es:lista $arrowRight frase _fr:liste $arrowRight phrase _</translations>
      <inputs>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <custom-block s='join words %mult%txt'>
            <block var='data'/>
          </custom-block>
        </block>
      </script>
    </block-definition>
    <block-definition s='sentence $arrowRight list %&apos;text&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations>de:Satz $arrowRight Liste _ca:frase $arrowRight llista _es:frase $arrowRight lista _fr:phrase $arrowRight liste _</translations>
      <inputs>
        <input type='%txt'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportTextSplit'>
            <block var='text'/>
            <l>
              <option>whitespace</option>
            </l>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='catch %&apos;tag&apos; %&apos;action&apos;' category='control' type='command'>
      <header/>
      <code/>
      <translations>de:fange _ _ca:agafa _ _es:atrapar _ _fr:attrape _ _</translations>
      <inputs>
        <input type='%upvar'/>
        <input type='%cs'/>
      </inputs>
      <script>
        <block s='doCallCC'>
          <block s='reifyScript'>
            <script>
              <block s='doSetVar'>
                <l>tag</l>
                <block var='cont'/>
              </block>
              <block s='doRun'>
                <block var='action'/>
                <list/>
              </block>
            </script>
            <list>
              <l>cont</l>
            </list>
          </block>
        </block>
        <custom-block s='ignore %s'>
          <l>3</l>
        </custom-block>
      </script>
    </block-definition>
    <block-definition s='throw %&apos;cont&apos;' category='control' type='command'>
      <header/>
      <code/>
      <translations>de:wirf _ca:llança _es:lanzar _fr:lance _</translations>
      <inputs>
        <input type='%s'>catchtag</input>
      </inputs>
      <script>
        <block s='doRun'>
          <block var='cont'/>
          <list/>
        </block>
      </script>
    </block-definition>
    <block-definition s='catch %&apos;tag&apos; %&apos;value&apos;' category='control' type='reporter'>
      <header/>
      <code/>
      <translations>de:fange _ _ca:agafa _ _es:atrapar _ _fr:attrape _ _</translations>
      <inputs>
        <input type='%upvar'/>
        <input type='%anyUE'/>
      </inputs>
      <script>
        <block s='doCallCC'>
          <block s='reifyScript'>
            <script>
              <block s='doSetVar'>
                <l>tag</l>
                <block var='cont'/>
              </block>
              <block s='doReport'>
                <block s='evaluate'>
                  <block var='value'/>
                  <list/>
                </block>
              </block>
            </script>
            <list>
              <l>cont</l>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='throw %&apos;tag&apos; %&apos;value&apos;' category='control' type='command'>
      <header/>
      <code/>
      <translations>de:wirf _ _ca:llança _ _es:lanzar _ _fr:lance _ _</translations>
      <inputs>
        <input type='%s'>catchtag</input>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doRun'>
          <block var='tag'/>
          <list>
            <block var='value'/>
          </list>
        </block>
      </script>
    </block-definition>
    <block-definition s='for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;' category='lists' type='command'>
      <header/>
      <code/>
      <translations>de:für jedes _ von _ _ca:per cada _ de _ _es:para cada _ de _ _fr:pour chaque _ de _ _</translations>
      <inputs>
        <input type='%upvar'/>
        <input type='%l'/>
        <input type='%cs'/>
      </inputs>
      <script>
        <block s='doUntil'>
          <custom-block s='empty? %l'>
            <block var='data'/>
          </custom-block>
          <script>
            <block s='doSetVar'>
              <l>item</l>
              <block s='reportListItem'>
                <l>1</l>
                <block var='data'/>
              </block>
            </block>
            <block s='doRun'>
              <block var='action'/>
              <list>
                <block s='reportListItem'>
                  <l>1</l>
                  <block var='data'/>
                </block>
              </list>
            </block>
            <block s='doSetVar'>
              <l>data</l>
              <block s='reportCDR'>
                <block var='data'/>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0' category='control' type='command'>
      <header/>
      <code/>
      <translations>de:falls _ dann _ und pause $pause-1-255-220-0ca:si _ fes _ i atura-ho tot $pause-1-255-220-0es:si _ haz _ y páralo todo $pause-1-255-220-0fr:si _ faire _ et mettre tout en pause $pause-1-255-220-0</translations>
      <inputs>
        <input type='%boolUE'/>
        <input type='%cs'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>breakpoint</l>
          </list>
        </block>
        <block s='doIf'>
          <block s='evaluate'>
            <block var='test'/>
            <list/>
          </block>
          <script>
            <block s='doSetVar'>
              <l>breakpoint</l>
              <block var='test'/>
            </block>
            <block s='doShowVar'>
              <l>breakpoint</l>
            </block>
            <block s='doRun'>
              <block var='action'/>
              <list/>
            </block>
            <block s='doPauseAll'/>
            <block s='doHideVar'>
              <l/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='word $arrowRight list %&apos;word&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations>de:Wort $arrowRight Liste _ca:paraula $arrowRight llista _es:palabra $arrowRight lista _fr:mot $arrowRight liste _</translations>
      <inputs>
        <input type='%txt'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportTextSplit'>
            <block var='word'/>
            <l>
              <option>letter</option>
            </l>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition category='control' s='ignore %&apos;x&apos;' type='command'>
      <header/>
      <code/>
      <translations>de:ignoriere _ca:ignora _es:ignorar _fr:ignore _</translations>
      <inputs>
        <input type='%s'/>
      </inputs>
    </block-definition>
    <block-definition s='list $arrowRight word %&apos;list&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations>de:Liste $arrowRight Wort _ca:llista $arrowRight paraula _es:lista $arrowRight palabra _fr:liste $arrowRight mot _</translations>
      <inputs>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportJoinWords'>
            <block var='list'/>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='%&apos;x&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block var='x'/>
        </block>
      </script>
    </block-definition>
    <block-definition s='numbers from %&apos;from&apos; to %&apos;to&apos;' category='lists' type='reporter'>
      <header/>
      <code/>
      <translations>de:Zahlen von _ bis _ca:nombres des de _ a _es:números de _ a _fr:nombres de _ à _</translations>
      <inputs>
        <input type='%n'>1</input>
        <input type='%n'>10</input>
      </inputs>
      <script>
        <block s='doIf'>
          <block s='reportGreaterThan'>
            <block var='from'/>
            <block var='to'/>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportNewList'>
                <list/>
              </block>
            </block>
          </script>
        </block>
        <block s='doReport'>
          <block s='reportCONS'>
            <block var='from'/>
            <custom-block s='numbers from %n to %n'>
              <block s='reportSum'>
                <block var='from'/>
                <l>1</l>
              </block>
              <block var='to'/>
            </custom-block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='map %&apos;func&apos; over %&apos;data&apos;' category='lists' type='reporter'>
      <header/>
      <code/>
      <translations>de:wende _ an auf _ca:mapeja _ sobre _es:mapear _ sobre _fr:appliquer _ à _</translations>
      <inputs>
        <input type='%repRing'/>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doIf'>
          <custom-block s='empty? %l'>
            <block var='data'/>
          </custom-block>
          <script>
            <block s='doReport'>
              <block var='data'/>
            </block>
          </script>
        </block>
        <block s='doReport'>
          <block s='reportCONS'>
            <block s='evaluate'>
              <block var='func'/>
              <list>
                <block s='reportListItem'>
                  <l>1</l>
                  <block var='data'/>
                </block>
              </list>
            </block>
            <custom-block s='map %repRing over %l'>
              <block var='func'/>
              <block s='reportCDR'>
                <block var='data'/>
              </block>
            </custom-block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo10 %&apos;valeur minimale&apos; %&apos;valeur maximale&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <custom-block s='map %repRing over %l'>
            <block s='reifyReporter'>
              <autolambda>
                <block s='reportMonadic'>
                  <l>
                    <option>sqrt</option>
                  </l>
                  <l/>
                </block>
              </autolambda>
              <list/>
            </block>
            <custom-block s='numbers from %n to %n'>
              <block var='valeur minimale'/>
              <block var='valeur maximale'/>
            </custom-block>
          </custom-block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo11b %&apos;valeur minimale&apos; %&apos;valeur maximale&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <custom-block s='map %repRing over %l'>
            <block s='reifyReporter'>
              <autolambda>
                <block s='reportProduct'>
                  <l>8</l>
                  <l/>
                </block>
              </autolambda>
              <list/>
            </block>
            <custom-block s='numbers from %n to %n'>
              <block var='valeur minimale'/>
              <block var='valeur maximale'/>
            </custom-block>
          </custom-block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo12 %&apos;valeur minimale&apos; %&apos;valeur maximale&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <custom-block s='combine with %repRing items of %l'>
            <block s='reifyReporter'>
              <autolambda>
                <block s='reportSum'>
                  <l/>
                  <l/>
                </block>
              </autolambda>
              <list/>
            </block>
            <custom-block s='map %repRing over %l'>
              <block s='reifyReporter'>
                <autolambda>
                  <block s='reportQuotient'>
                    <l>1</l>
                    <l/>
                  </block>
                </autolambda>
                <list/>
              </block>
              <custom-block s='numbers from %n to %n'>
                <block var='valeur minimale'/>
                <block var='valeur maximale'/>
              </custom-block>
            </custom-block>
          </custom-block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo13 %&apos;x&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doIf'>
          <block s='reportOr'>
            <block s='reportGreaterThan'>
              <block var='x'/>
              <l>0</l>
            </block>
            <block s='reportEquals'>
              <block var='x'/>
              <l>0</l>
            </block>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportMonadic'>
                <l>
                  <option>sqrt</option>
                </l>
                <block var='x'/>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo14 %&apos;x&apos; %&apos;y&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportGreaterThan'>
            <block var='x'/>
            <block var='y'/>
          </block>
          <script>
            <block s='doReport'>
              <block var='x'/>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block var='y'/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo15 %&apos;A&apos; %&apos;B&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doIf'>
          <block s='reportGreaterThan'>
            <block var='A'/>
            <l>0</l>
          </block>
          <script>
            <custom-block s='%anyUE ← %s'>
              <block var='A'/>
              <block s='reportSum'>
                <block var='A'/>
                <l>1</l>
              </block>
            </custom-block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportGreaterThan'>
            <block var='B'/>
            <l>4</l>
          </block>
          <script>
            <custom-block s='%anyUE ← %s'>
              <block var='B'/>
              <block s='reportDifference'>
                <block var='B'/>
                <l>1</l>
              </block>
            </custom-block>
          </script>
        </block>
        <block s='doReport'>
          <block s='reportNewList'>
            <list>
              <block var='A'/>
              <block var='B'/>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo16 %&apos;x&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doIf'>
          <block s='reportNot'>
            <block s='reportEquals'>
              <block var='x'/>
              <l>1</l>
            </block>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportQuotient'>
                <l>1</l>
                <block s='reportDifference'>
                  <block var='x'/>
                  <l>1</l>
                </block>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo17 %&apos;montant&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <custom-block s='tant que %boolUE %cs'>
          <block s='reportNot'>
            <block s='reportLessThan'>
              <block var='montant'/>
              <l>110</l>
            </block>
          </block>
          <script>
            <custom-block s='%anyUE ← %s'>
              <block var='montant'/>
              <block s='reportDifference'>
                <block var='montant'/>
                <l>110</l>
              </block>
            </custom-block>
          </script>
        </custom-block>
        <block s='doReport'>
          <block var='montant'/>
        </block>
      </script>
      <scripts>
        <script x='187.3076923076923' y='136.07692307692292'>
          <custom-block s='%n ≥ %n'>
            <block var='montant'/>
            <l>110</l>
          </custom-block>
        </script>
        <script x='34.846154846153816' y='168.46153946153845'>
          <block s='reportOr'>
            <block s='reportGreaterThan'>
              <block var='montant'/>
              <l>110</l>
            </block>
            <block s='reportEquals'>
              <block var='montant'/>
              <l>110</l>
            </block>
          </block>
        </script>
      </scripts>
    </block-definition>
    <block-definition s='tant que %&apos;condition&apos; %&apos;action&apos;' category='control' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%boolUE'/>
        <input type='%cs'/>
      </inputs>
      <script>
        <block s='doUntil'>
          <block s='reportNot'>
            <block s='evaluate'>
              <block var='condition'/>
              <list/>
            </block>
          </block>
          <script>
            <block s='doRun'>
              <block var='action'/>
              <list/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='%&apos;x&apos; ^ %&apos;n&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportEquals'>
            <block var='n'/>
            <l>0</l>
          </block>
          <script>
            <block s='doReport'>
              <l>1</l>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block s='reportProduct'>
                <custom-block s='%n ^ %n'>
                  <block var='x'/>
                  <block s='reportDifference'>
                    <block var='n'/>
                    <l>1</l>
                  </block>
                </custom-block>
                <block var='x'/>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo18' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>N</l>
          </list>
        </block>
        <custom-block s='%anyUE ← %s'>
          <block var='N'/>
          <l>1</l>
        </custom-block>
        <custom-block s='tant que %boolUE %cs'>
          <block s='reportLessThan'>
            <custom-block s='%n ^ %n'>
              <l>2</l>
              <block var='N'/>
            </custom-block>
            <l>10000</l>
          </block>
          <script>
            <custom-block s='%anyUE ← %s'>
              <block var='N'/>
              <block s='reportSum'>
                <block var='N'/>
                <l>1</l>
              </block>
            </custom-block>
          </script>
        </custom-block>
        <block s='doReport'>
          <block var='N'/>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo19 %&apos;hauteur&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>nombre rebonds</l>
          </list>
        </block>
        <custom-block s='%anyUE ← %s'>
          <block var='nombre rebonds'/>
          <l>0</l>
        </custom-block>
        <custom-block s='tant que %boolUE %cs'>
          <block s='reportGreaterThan'>
            <block var='hauteur'/>
            <l>100</l>
          </block>
          <script>
            <custom-block s='%anyUE ← %s'>
              <block var='nombre rebonds'/>
              <block s='reportSum'>
                <block var='nombre rebonds'/>
                <l>1</l>
              </block>
            </custom-block>
            <custom-block s='%anyUE ← %s'>
              <block var='hauteur'/>
              <block s='reportProduct'>
                <l>0.9</l>
                <block var='hauteur'/>
              </block>
            </custom-block>
          </script>
        </custom-block>
        <block s='doReport'>
          <block var='nombre rebonds'/>
        </block>
      </script>
      <scripts>
        <script x='98.33333335520584' y='215.23077023076925'>
          <block s='reportNewList'>
            <list>
              <block var='nombre rebonds'/>
              <block var='hauteur'/>
            </list>
          </block>
        </script>
      </scripts>
    </block-definition>
    <block-definition s='%&apos;n&apos; !' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportEquals'>
            <block var='n'/>
            <l>0</l>
          </block>
          <script>
            <block s='doReport'>
              <l>1</l>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block s='reportProduct'>
                <custom-block s='%n !'>
                  <block s='reportDifference'>
                    <block var='n'/>
                    <l>1</l>
                  </block>
                </custom-block>
                <block var='n'/>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo6b %&apos;A&apos; %&apos;B&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportNewList'>
            <list>
              <block s='reportSum'>
                <block var='A'/>
                <block var='B'/>
              </block>
              <block s='reportSum'>
                <block var='B'/>
                <block var='A'/>
              </block>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo6 %&apos;A&apos; %&apos;B&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <custom-block s='%anyUE ← %s'>
          <block var='B'/>
          <block s='reportSum'>
            <block var='B'/>
            <block var='A'/>
          </block>
        </custom-block>
        <custom-block s='%anyUE ← %s'>
          <block var='A'/>
          <block s='reportSum'>
            <block var='A'/>
            <block var='B'/>
          </block>
        </custom-block>
        <block s='doReport'>
          <block s='reportNewList'>
            <list>
              <block var='A'/>
              <block var='B'/>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo6c %&apos;A&apos; %&apos;B&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>C</l>
          </list>
        </block>
        <custom-block s='%anyUE ← %s'>
          <block var='C'/>
          <block s='reportSum'>
            <block var='A'/>
            <block var='B'/>
          </block>
        </custom-block>
        <custom-block s='%anyUE ← %s'>
          <block var='B'/>
          <block s='reportSum'>
            <block var='B'/>
            <block var='A'/>
          </block>
        </custom-block>
        <custom-block s='%anyUE ← %s'>
          <block var='A'/>
          <block var='C'/>
        </custom-block>
        <block s='doReport'>
          <block s='reportNewList'>
            <list>
              <block var='A'/>
              <block var='B'/>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo10a %&apos;n_min&apos; %&apos;n_max&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>a</l>
          </list>
        </block>
        <custom-block s='%anyUE ← %s'>
          <block var='a'/>
          <block s='reportNewList'>
            <list/>
          </block>
        </custom-block>
        <custom-block s='pour %upvar = %n à %n %cs'>
          <l>n</l>
          <block var='n_min'/>
          <block var='n_max'/>
          <script>
            <block s='doAddToList'>
              <block s='reportMonadic'>
                <l>
                  <option>sqrt</option>
                </l>
                <block var='n'/>
              </block>
              <block var='a'/>
            </block>
          </script>
        </custom-block>
        <block s='doReport'>
          <block var='a'/>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo11a %&apos;n_min&apos; %&apos;n_max&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>a</l>
          </list>
        </block>
        <custom-block s='%anyUE ← %s'>
          <block var='a'/>
          <block s='reportNewList'>
            <list/>
          </block>
        </custom-block>
        <custom-block s='pour %upvar = %n à %n %cs'>
          <l>n</l>
          <block var='n_min'/>
          <block var='n_max'/>
          <script>
            <block s='doAddToList'>
              <block s='reportProduct'>
                <l>8</l>
                <block var='n'/>
              </block>
              <block var='a'/>
            </block>
          </script>
        </custom-block>
        <block s='doReport'>
          <block var='a'/>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo12a %&apos;n_min&apos; %&apos;n_max&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>somme</l>
          </list>
        </block>
        <custom-block s='%anyUE ← %s'>
          <block var='somme'/>
          <l>0</l>
        </custom-block>
        <custom-block s='pour %upvar = %n à %n %cs'>
          <l>n</l>
          <block var='n_min'/>
          <block var='n_max'/>
          <script>
            <custom-block s='%anyUE ← %s'>
              <block var='somme'/>
              <block s='reportSum'>
                <block var='somme'/>
                <block s='reportQuotient'>
                  <l>1</l>
                  <block var='n'/>
                </block>
              </block>
            </custom-block>
          </script>
        </custom-block>
        <block s='doReport'>
          <block var='somme'/>
        </block>
      </script>
    </block-definition>
    <block-definition s='%&apos;a&apos; ≥ %&apos;b&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportOr'>
            <block s='reportGreaterThan'>
              <block var='a'/>
              <block var='b'/>
            </block>
            <block s='reportEquals'>
              <block var='a'/>
              <block var='b'/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='algo13b %&apos;x&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doIf'>
          <custom-block s='%n ≥ %n'>
            <block var='x'/>
            <l>0</l>
          </custom-block>
          <script>
            <block s='doReport'>
              <block s='reportMonadic'>
                <l>
                  <option>sqrt</option>
                </l>
                <block var='x'/>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='%&apos;a&apos; ≤ %&apos;b&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <custom-block s='???'/>
        </block>
      </script>
    </block-definition>
    <block-definition category='other' s='action1' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
    </block-definition>
    <block-definition category='other' s='action2' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
    </block-definition>
    <block-definition category='other' s='action ...' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
    </block-definition>
    <block-definition s='condition %&apos;bool&apos;' category='other' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%b'>true</input>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportBoolean'>
            <l>
              <bool>true</bool>
            </l>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='???' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doReport'>
          <l/>
        </block>
      </script>
    </block-definition>
    <block-definition s='fonction %&apos;Entrée&apos;' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
      </inputs>
      <script>
        <block s='doReport'>
          <l>Résultat</l>
        </block>
      </script>
    </block-definition>
  </blocks>
  <variables>
    <variable name='min'>
      <l>0</l>
    </variable>
    <variable name='max'>
      <l>0</l>
    </variable>
    <variable name='x'>
      <l>0</l>
    </variable>
    <variable name='N'>
      <l>0</l>
    </variable>
    <variable name='Entrée'>
      <l>0</l>
    </variable>
  </variables>
</project><media name="Des algorithmes aux fonctions" app="Snap! 4.2, http://snap.berkeley.edu" version="1"></media></snapdata>