Examen corrigé d'algorithme
Mercredi 20 décembre 2006
Les différentes parties sont indépendantes. Lisez tout le sujet avant de commencer N’hésitez pas à travailler sur un brouillon avant de recopier ! L’opérateur modulo (reste de la division entière) sera noté avec le symbole pourcent (%). En plus de vos algorithmes, donnez des commentaires sur ce que vous faites. De même, si vous n’avez pas toutes les étapes d’un problème, rajoutez un texte explicatif de ce qui manque. Documents autorisés : cours, TD.
1 Le crible d’Ératosthène
Le crible d’Ératosthène est algorithme permettant de trouver facilement les nombres premiers.
1.1
Présentation du sujet
Nombres premiers Un nombre premier est un nombre qui n’est divisible de manière entière que par 1 ou par lui-même. Par exemple 3, 5, 11,. . .sont premiers alors que 4 (divisible par 2), 9 (divisible par 3),. . .ne le sont pas. Principe On considère les nombres de 2 à N . Le premier (2) est premier, tous ces multiples ne sont donc pas premiers (4, 6, . . .) et sont éliminés. On s’intéresse ensuite au prochain nombre qui n’a pas été éliminé (3) et on élimine tous ces multiples (3,6 qui a déjà été éliminé, 9,. . .). Le prochain nombre non éliminé est 5 et on réitère l’opération (on élimine ainsi 15, 25, . . .les autres multiples de 5 sont aussi multiples de 2 et on été éliminés.) L’opération s’arrête lorsque l’on est arrivé à l’élément N . Le tableau 1 présente l’application de cette méthode pour les 10 premiers entiers.
1.2
Travail à faire
Proposez un programme qui affiche les nombres entiers dans l’intervalle 1..N N est demandé à l’utilisateur (maximum 100). 1
T AB . 1 – Le crible d’Ératosthène pour les 10 premiers entiers Itération Liste des nombres description de l’opération 0 2,3,4,5,6,7,8,9,10 Initialisation des éléments de 2 à N 1 2,3,4,5,6,7,8,9,10 2 est premier, élimination des ces multiples 2,3,4,5,6,7,8,9,10 3 est premier, élimination des ces multiples 2 3 2,3,4,5,6,7,8,9,10 5 est premier,