Ecole Nationale Polytechnique d’Oran Classes Préparatoires Sciences Techniques, Module Informatique
Fiche TD n°4 : Algorithmique
Exercice 01: Ecrire les algorithmes qui permettent : a) De lire le coté d’un carré, de calculer son périmètre et sa surface et de les visualiser. b) De lire la longueur et la largeur d’un rectangle, de calculer son périmètre et sa surface et de les visualiser. c) De lire le rayon d’un cercle, de calculer son périmètre et sa surface et de les visualiser. Exercice 02: Ecrire un algorithme permettant d’échanger les valeurs de deux variables A et B, et ce quel que soit leur contenu préalable. Exercice 03: 1. Ecrire un algorithme qui demande deux nombres à l’utilisateur et l’informe ensuite si leur produit est négatif ou positif ou nul. Attention toutefois : on ne doit pas calculer le produit des deux nombres 2. Ecrire un algorithme qui donne le maximum de trois nombres saisis au clavier. Exercice 04: Ecrire un algorithme permettant de résoudre une équation du second degré. ax2 + bx + c = 0 ; Exercice 05: Ecrire un algorithme calculatrice permettant la saisie du premier entier (a) de l'opération ( + ou – ou * ou / : sont des caractères) et du deuxième entier (b) et qui affiche le résultat.
Structures répétitives Exercice 01: Les étudiants ayant passé des examens (n modules) on cherche à calculer leurs moyennes par semestre et les classer par catégorie : Pour une moyenne inférieure strictement à 5, « l'étudiant est faible », pour une moyenne supérieure ou égale à 5 et inférieur strictement à 10, « l'étudiant doit faire des efforts » pour une moyenne supérieure ou égale à 10, « l'étudiant valide le semestre » Ecrivez un algorithme qui demande à l’utilisateur d’entrer le nombre de modules, la note de chaque module, et de calculer la moyenne puis afficher la situation de l’étudiant selon sa moyenne (on suppose que l'utilisateur entre une note valide entre 0 et 20). Exercice 02 : 1. Ecrire un algorithme qui calcule la somme des n premiers nombres entiers positifs. 2. Ecrire un algorithme qui calcule la somme des n premiers nombres entiers positifs paires. 3. Ecrire un algorithme qui calcule le factoriel de n : n ! = 1×2×3× … ×(n-1)× n. 1/2
Exercice 03 : Ecrire un algorithme qui demande un nombre de départ, et qui ensuite écrit la table de multiplication de ce nombre. Exercice 04 : Ecrire un algorithme qui demande successivement 10 nombres à l'utilisateur, et qui affiche à la fin le plus grand de ces 10 nombres et son rang dans la liste saisie. Exemple : Entrez le nombre numéro 1 : 13 Entrez le nombre numéro 2 : 17 ….. Entrez le nombre numéro 10 : 5 Le plus grand de ces nombres est : 17 C'était le 2ème nombre saisi Note : Utiliser les boucles Tant Que, Répéter et Pour. Exercice 07 : (corrigé) Ecrire un algorithme mettant en œuvre le jeu suivant entre deux joueurs : Le premier utilisateur saisi un entier que le second doit deviner. Pour cela, il a le droit à autant de tentatives qu'il souhaite. A chaque échec, le programme lui indique si l'entier est plus grand ou plus petit que sa proposition. Un score est affiché lorsque l'entier est trouvé. Avec la boucle REPETER
Avec la boucle TANTQUE
ALGORITHME devinette VAR a, n, t : ENTIER DEBUT ECRIRE(" Entrez le nombre à deviner") LIRE (a) t1 { t est le nombre de tentatives) REPETER ECRIRE("Entrez un nombre (tentative N° : ",t,")") LIRE (n) Cas ou n>a: ECRIRE (" nombre cherché plus petit que : ",n ) n <a : ECRIRE (" nombre cherché plus grand que ",n) n=a : ECRIRE (" c'est gagné : le nombre de tentatives est" ,t) FINcas t t+1 JUSQU'A (a=n) FIN
ALGORITHME devinette VAR a, n, t : ENTIER DEBUT ECRIRE(" Entrez le nombre à deviner :") LIRE (a) ECRIRE("entrez votre premier essai") LIRE (n) t1 TANTQUE (a ≠ n) FAIRE SI (n>a) ALORS ECRIRE (" Nombre cherché plus petit " ) SINON ECRIRE (" Nombre cherché plus grand ") FINSI t t+1 ECRIRE("Entrez un autre nombre (tentative N° : ",t,")") LIRE (n) FINTANTQUE ECRIRE ("C'est Gagné !! Nombre de tentatives est" ,t) FIN
Remarque : pour chaque exercice donner l’organigramme correspondant à l’algorithme demandé.
2/2