Outils pour utilisateurs

Outils du site


nsi:premiere:exercices_algorithmes

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
nsi:premiere:exercices_algorithmes [2021/06/17 22:28] goupillwikinsi:premiere:exercices_algorithmes [2024/08/18 17:23] (Version actuelle) – [Exercice 5 : Zune] goupillwiki
Ligne 1: Ligne 1:
 ====== Exercices - Algorithmes ====== ====== Exercices - Algorithmes ======
  
-{{ :nsi:premiere:algorithme_exercices.eleves.pdf |Version imprimable}}+{{ .:algorithme:algorithme.exercices.eleves.pdf |Version imprimable}}
  
 ==== Exercice 1 ==== ==== Exercice 1 ====
Ligne 65: Ligne 65:
  
 ==== Exercice 2 ==== ==== Exercice 2 ====
 +
 +La [[https://fr.wikipedia.org/wiki/Logo_(langage)|Logo]] est un langage de programmation pédagogique dans lequel on anime la pointe d'un crayon qui dessine. Le crayon commence à la position (0,0) et il est orienté vers l'Est (droite). Il peut avancer et tourner à gauche ou à droite. Que font les programmes suivants ?
 +
 +== algo a) ==
 +<code lang-none linenums>
 +DÉBUT
 +    avancer de 100
 +    tourner gauche de 90 degrés
 +    avancer de 100
 +    tourner gauche de 90 degrés
 +    avancer de 100
 +    tourner gauche de 90 degrés
 +    avancer de 100
 +    tourner gauche de 90 degrés
 +FIN
 +</code>
 +
 +== algo b) ==
 +
 +<code lang-none linenums>
 +DÉBUT
 +    RÉPÉTER 6 FOIS
 +        avancer de 100
 +        tourner à droite de 60 degrés
 +    FIN
 +FIN
 +</code>
 +
 +== algo c) ==
 +
 +<code lang-none linenums>
 +DÉBUT
 +    RÉPÉTER 3 FOIS
 +        RÉPÉTER 3 fois
 +            avancer de 100
 +            tourner à droite de 120 degrés
 +        FIN
 +        tourner à droite de 120 degrés
 +    FIN
 +FIN
 +</code>
 +
 +==== Exercice 3 ====
  
 Que font les deux algorithmes suivants ? Que font les deux algorithmes suivants ?
Ligne 91: Ligne 134:
 </code> </code>
  
-==== Exercice ====+==== Exercice ====
  
 On suppose que l'on peut utiliser un ensemble d'éléments, par exemple quelque chose comme $\left\lbrace 1, 14, 25, 8, 17\right\rbrace$. Il est notamment possible de parcourir cet ensemble pour en lire les éléments un à un. On suppose que l'on peut utiliser un ensemble d'éléments, par exemple quelque chose comme $\left\lbrace 1, 14, 25, 8, 17\right\rbrace$. Il est notamment possible de parcourir cet ensemble pour en lire les éléments un à un.
  
 <code lang-none linenums> <code lang-none linenums>
-ENTRÉES ensemble e+ENTRÉES ens, un ensemble
 DÉBUT DÉBUT
     soit n = 0     soit n = 0
-    POUR CHAQUE élément DE e FAIRE+    POUR CHAQUE élément e DE ens FAIRE
         ajouter 1 à n         ajouter 1 à n
     FIN     FIN
Ligne 106: Ligne 149:
 </code> </code>
  
-  - Que renvoie l'algorithme pour ''%%= {1, 14, 25, 8, 17}%%'' ?+  - Que renvoie l'algorithme pour ''%%ens = {1, 14, 25, 8, 17}%%'' ?
   - Que renvoie l'algorithme en général ?   - Que renvoie l'algorithme en général ?
-  - Dans le cas où ''%%e%%'' ne contient que des nombres, écrivez un algorithme semblable qui renvoie le total des éléments de ''%%e%%''+  - Dans le cas où ''%%ens%%'' ne contient que des nombres, écrivez un algorithme semblable qui renvoie le total des éléments de ''%%e%%''
-  - Dans le cas où ''%%e%%'' ne contient que des nombres, écrivez un algorithme semblable qui renvoie la valeur maximum de ''%%e%%''. +  - Dans le cas où ''%%ens%%'' ne contient que des nombres, écrivez un algorithme semblable qui renvoie la valeur maximum de ''%%ens%%''Précisez la précondition dans ce cas.
-  - Indiquez une précondition pour ce dernier cas.+
  
 > **Remarque :** Cette structure permettant le parcours de tous les éléments d'un ensemble n'est pas présente dans tous les langages de programmation. Elle est par exemple absente en C. C'est en revanche la forme unique choisie pour la boucle ''%%POUR%%'' de Python. > **Remarque :** Cette structure permettant le parcours de tous les éléments d'un ensemble n'est pas présente dans tous les langages de programmation. Elle est par exemple absente en C. C'est en revanche la forme unique choisie pour la boucle ''%%POUR%%'' de Python.
  
-==== Exercice : Zune ====+==== Exercice : Zune ====
  
 [[https://fr.wikipedia.org/wiki/Zune|Zune]] est le nom donné par Microsoft à son logiciel de gestion et de lecture de fichiers musicaux dans les baladeurs du même nom, commercialisé entre 2006 et 2011. [[https://fr.wikipedia.org/wiki/Zune|Zune]] est le nom donné par Microsoft à son logiciel de gestion et de lecture de fichiers musicaux dans les baladeurs du même nom, commercialisé entre 2006 et 2011.
Ligne 121: Ligne 163:
  
 <code lang-none linenums> <code lang-none linenums>
-ENTRÉE jour: représente le numéro de jour à partir du 1er janvier 1980 (jour 1)+ENTRÉE jours: représente le nombre de jour à partir du 1er janvier 1980 (jour 1)
 SORTIE année, jour: paire fournissant l'année et et le jour dans l'année SORTIE année, jour: paire fournissant l'année et et le jour dans l'année
-par ex: le 14/01/1981 est le jour 380 en comptant à partir du 01/01/1980 +par ex: pour 14/01/1981, jours = 380 et la fonction doit renvoyer 1981, 14
-  et la fonction doit renvoyer 1981, 14+
 DÉBUT DÉBUT
-    soit année = 0 +    soit année = 1980 
-    TANT QUE jour > 365 RÉPÉTER+    TANT QUE jours > 365 RÉPÉTER
         SI année bissextile ALORS         SI année bissextile ALORS
-            SI jour > 366 ALORS +            SI jours > 366 ALORS 
-                enlever 366 à jour+                enlever 366 à jours 
 +                ajouter 1 à année
             FIN             FIN
         SINON         SINON
-            enlever 365 à jour+            enlever 365 à jours 
 +            ajouter 1 à année
         FIN         FIN
-        ajouter 1 à année 
     FIN     FIN
-    RENVOYER année, jour+    RENVOYER année, jours
 FIN FIN
 </code> </code>
nsi/premiere/exercices_algorithmes.1623961720.txt.gz · Dernière modification : de goupillwiki