Algo et Prgm

4 SI

Récurrents + Arithmétiques

Exercice N°1 : Ecrire l’algorithme d’un programme qui stocke la décomposition en facteurs premiers d'un nombre entier strictement positif dans un tableau composé de deux colonnes. La première colonne doit contenir les nombres premiers facteurs et la deuxième colonne contenant les puissances des nombres contenus dans la première. Et ensuite affiche les éléments de ce tableau sous la forme 450 = 2^1*3^2*5^2. Exercice N°2: Un entier est dit premier s’il n’est divisible que par 1 et par lui-même. Un entier est dit semi-premier s’il n’a que deux diviseurs sauf 1 et lui-même et chacun de ces deux diviseurs doit être premier. Exemple : 15 = 3*5 avec 3 est premier et 5 est premier et 3 et 5 sont les seuls diviseurs de 15 sauf 1 et 15. Ecrire un programme qui permet de vérifier si un entier donné est premier, semipremier ou ni premier ni semi-premier. Exercice N°3: Un entier naturel est dit nombre ROND si son écriture binaire contient autant de 1 que de 0. Exemple : 9 est représenté en binaire par 1001 donc 9 est un nombre ROND. Écrire un programme Pascal qui permet de trouver et d’afficher tous les entiers ROND de l’intervalle [1,1000]. Exercice N°4: Ecrire une fonction qui calcule la somme des chiffres d'un nombre entier strictement positif et recommence le calcul avec le résultat obtenu tant que celui-ci n'est pas compris entre 1 et 9. Après chaque calcul la fonction affiche à l'écran la somme obtenue. La fonction retournera le nombre entre 1 et 9 obtenu. Exemple :Si le nombre passé en paramètre à la fonction est 123456. La fonction affichera : 21 (car 1+2+3+4+5+6=21) Lycée Alahd aljadid Prof : Mr Ferjani Amine

NB : Prévoir des solutions récursives.Algo et Prgm 3 : (car 2+1=3) La fonction retournera 3. 2.9) 6 + 1 = 7  7 est strictement inférieur à 9 (Ne rien faire) 7 + 9 = 16  16 est supérieur ou égal à 9 on lui soustrait 9 pour obtenir 7 (7 = 16 – 9) 7 + 2 = 9  9 est supérieur ou égal à 9 on lui soustrait 9 pour obtenir 0 (0 = 9 – 9) Lycée Alahd aljadid Prof : Mr Ferjani Amine . 3. si le résultat est supérieur ou égal à 9. à la fonction C en lui donnant les paramètres nécessaires. 1.Donner une analyse et un algorithme pour chaque module. on lui soustrait 9 (" -") sinon on ne fait rien. La fonction recevra le nombre entier sous la forme d'une chaîne de caractères contenant son écriture décimale. puis afficher ce dernier.Donner la traduction Pascal. on ajoute (addition « +») le deuxième chiffre (s'il y en a un). Exercice N°6 : On veut déterminer si un nombre est divisible par 9 par la méthode suivante (on suppose que ce nombre ne commence pas par 9) : On part du premier chiffre le plus à gauche. On répète ensuite la même opération pour les chiffres suivants. Le nombre est divisible par 9 si et seulement si le résultat final est nul. (La condition d’arrêt est lorsqu’on atteint le dernier chiffres le plus à droite [long (ch)]) Ecrire une analyse d’une fonction booléenne estDivisiblePar9 qui indique si le nombre entier positif passé en paramètre est divisible par 9 en mettant en œuvre la méthode décrite ci-dessus.Analyser le problème et le décomposer en modules. Exercice N°5: (Triangle de pascal) On rappelle que Cnp = 1 si (p = 0) ou (p = n) Cnp = Cn-1 p-1 + Cn-1 p sinon 4 SI On veut remplir le triangle de pascal en faisant appel à chaque fois. Exemple : Pour le nombre 78192 (passé en paramètre à la fonction sous la forme de la chaîne "78192") la fonction effectuera donc les opérations suivantes: 7 + 8 = 15 15 est supérieur ou égal à 9 on lui soustrait 9 pour obtenir 6 (6 = 15 .

C = 6 12 22 55 11 25 98 46 15 31 17 26 60 16 53 58 61 33 62 39 74 77 19 18 32 77 98 58 74 Le MINIMAX est 58 Lycée Alahd aljadid Prof : Mr Ferjani Amine . Exemple : Le Max  M : L = 4.Algo et Prgm Le résultat est nul donc 78192 est divisible par 9 (78192 = 9 x 8688).Donner une analyse pour chaque module 3. 1. Exercice N°7 : 4 SI On appelle MINIMAX d’une matrice d’entiers la valeur minimale des maxima de chaque ligne. (Le minimum des maximums de chaque ligne) On veut remplir aléatoirement une matrice M formée de L lignes et C colonnes d’entiers distincts formés de deux chiffres chacun (L et C doivent êtres comprises entre 4 et NMax avec NMax est une constante qui est égale à 20) puis afficher le MINIMAX de cette matrice.Elaborer l’algorithme du programme principal NB : Prévoir au moins deux modules récursifs.Analyser le problème et le décomposer en modules 2.