Académique Documents
Professionnel Documents
Culture Documents
2021/2022
Algorithmique et structure de données I Section : 1ère IAG
TD N°5
Exercice 1
1- Ecrire un sous-programme REMPLIR qui permet de remplir un tableau de N réel.
2- Ecrire un sous-programme INVERSER qui permet d’inverser les éléments du tableau.
(En utilisant la notion pointeur)
3- Ecrire un sous-programme AFFICHER qui permet d’afficher les éléments du tableau inversé.
4- Ecrire l’algorithme du programme principal qui assure le remplissage d’un tableau, l’inversion
de ces éléments et l’affichage de ses éléments inversés
1.Écrire un sous programme Somme_Diviseurs qui, pour un entier donné, retourne la somme de
ses diviseurs sauf lui-même.
1. Écrire un sous programme Nombres_Amis, qui étant donné 2 entiers, retourne s’ils sont des
nombres amis ou pas, en utilisant le sous programme Somme_Diviseurs.
2. Écrire l'algorithme principal qui permet de saisir deux entiers naturels strictement positifs et
afficher s'ils sont amis ou pas.
1
Algorithmique et structure de données I A.U. 2021/2022
Algorithmique et structure de données I Section : 1ère IAG
TD N°5
2 13 24 55 76 87 90
T2
12 13 90
T3
13 90
1. Ecrire un sous programme Saisie permettant de saisir les éléments du tableau T1 et T2.
2. Ecrire un sous programme Affiche permettant d'afficher le contenu d'un tableau.
3. Ecrire un sous programme Intersection permettant de déterminer et afficher l'intersection entre
T1 et T2.
4. Ecrire un algorithme principal qui fait appel aux sous programmes décrits.
Exercice 4
Ecrire un programme C qui permet de déterminer si deux entiers donnés sont des nombres premiers
jumeaux.
Sachant que, deux nombres premiers jumeaux sont deux nombres premiers dont la différence est
égale à 2.
Rappelons qu’un nombre premier est un nombre naturel supérieur à 1 qui a deux diviseurs 1 et lui-
même.
Exemples : (3, 5), (7, 5), (11, 13) sont des nombres premiers jumeaux.
(3, 7), (11, 17), (5, 31) sont des nombres premiers mais pas jumeaux
. (2, 5), (1, 8), (4, 12) ne sont pas des nombres premiers jumeaux.
2
Algorithmique et structure de données I A.U. 2021/2022
Algorithmique et structure de données I Section : 1ère IAG
TD N°5
Tableau trié :
14 4 6 8 8 4 11 17 5 7
Exercice 6
Un "tautogramme" est une chaîne dont tous les mots commencent par la même lettre.
Ecrire un algorithme qui permet de saisir une chaîne de caractères, de taille maximale 255, et
d'afficher par la suite un message indiquant si cette chaîne est "tautogramme" ou non.
On suppose que la phrase est écrite correctement et que deux mots consécutifs sont séparés par un
seul espace.
3
Algorithmique et structure de données I A.U. 2021/2022
Algorithmique et structure de données I Section : 1ère IAG
TD N°5
Exercice 7
Une chaîne de caractères est dite "distincte", si elle est composée de caractères différents. Ecrire un
algorithme qui permet de saisir une chaine, de taille maximale 200, non vide, puis de vérifier et
d’afficher si cette chaine est distincte ou non. - La fonction prédéfinie Longueur (strlen en C) peut
être utilisée.
Exercice 8
Ecrire un programme qui lit une chaîne de caractères CH et détermine le nombre de mots contenus
dans la chaîne. Utiliser un pointeur P, une variable logique, la fonction isspace et une variable
numérique N qui contiendra le nombre des mots.
Exercice 9
Ecrire un programme qui lit deux chaînes de caractères CH1 et CH2 au clavier et élimine toutes les
lettres de CH1 qui apparaissent aussi dans CH2. Utiliser deux pointeurs P1 et P2, une variable logique
TROUVE et la fonction strcpy.