Exercices Corrigés En Algorithme – Les tableaux
La meilleure façon d’apprendre quelque chose est de pratiquer des exercices. Nous avons préparer ces exercices corrigés pour les personnes (débutantes ou intermédiaires) qui sont familières avec les algorithmes. Nous espérons que ces exercices vous aideront à améliorer vos compétences sur les tableaux en algorithmique.
Vous pouvez lire notre tutoriel sur les algorithmes avant de résoudre les exercices suivants.
1. Écrire un algorithme permettant de saisir 10 nombres et de les stocker dans un tableau appelé myTab, puis de les afficher.
Exemple de sortie:
6 3 8 1 5 9 4 2 6 0 6 3 8 1 5 9 4 2 6 0
Algorithme AfficherTableau Variable myTab[10]:reéls i : entier Début Pour i de 1 jusqu❛à 10 faire lire(myTab[i]) FinPour Pour i de 1 jusqu'à 10 faire Ecrire(myTab[i]) FinPour Fin
2. Écrire un algorithme permettant d’entrer 10 notes et d’afficher la moyenne de ces notes.
Exemple de sortie:
6 3 8 1 5 9 4 2 6 0 La moyenne est: 4,4
Algorithme NoteMoyenne Variables Notes[10], sum :réels i :entier Début sum ← 0 Pour i de 1 jusqu'à 10 faire Lire(Notes[i]) sum ← sum + Notes[i] FinPour Ecrire("La moyenne est:",sum/10) Fin
3. Écrire un algorithme permettant la saisi de 10 nombres et l’affichage du maximum de ces nombres.
Exemple de sortie:
Entrer un nombre: 6 Entrer un nombre: 3 Entrer un nombre: 8 Entrer un nombre: 1 Entrer un nombre: 5 Entrer un nombre: 7 Entrer un nombre: 4 Entrer un nombre: 2 Entrer un nombre: 6 Entrer un nombre: 0 Le maximum est: 8
Algorithme myTabMax Variables myTab[10],max,i:réels Début Ecrire("Entrer un nombre:") Lire(myTab[0]) max ← myTab[0] Pour i de 1 jusqu'à 10 faire Ecrire("Entrer un nombre:") Lire(myTab[i]) Si (myTab[i] > max) alors max ← myTab[i] FinSi FinPour Ecrire("Le maximum est:",max) Fin
4. Ecrivez un algorithme qui permet d’entrer 10 nombres dans un tableau, et de calculer le nombre d’occurrences d’un élément E dans ce tableau. Où E est entré par l’utilisateur.
Exemple de sortie:
Entrer un nombre: 6 Entrer un nombre: 3 Entrer un nombre: 8 Entrer un nombre: 6 Entrer un nombre: 5 Entrer un nombre: 7 Entrer un nombre: 4 Entrer un nombre: 6 Entrer un nombre: 6 Entrer un nombre: 0 Entrer Le nombre recherché: 6 Nombre d'occurences de 6 est 4
Algorithme NbrOccurences Variables nbrRech,myTab[10]:réels nbrOcc,i:entiers Début nbrOcc ← 0 Pour i de 1 jusqu❛à 10 faire Ecrire("Entrer un nombre:") Lire(myTab[i]) FinPour Ecrire("Entrer Le nombre recherché:") Lire(nbrRech) Pour i de 1 jusqu❛à 10 faire Si(myTab[i] = nbrRech) alors nbrOcc ← nbrOcc + 1 FinSi FinPour Ecrire("Nombre d'occurences de ",nbrRech," est ",nbrOcc) Fin
5. Ecrivez un algorithme pour entrer 10 entiers dans un tableau et trier ce tableau dans un ordre croissant. Affichez ensuite ce tableau après l’avoir trié.
Exemple de sortie:
Entrer un nombre: 8 Entrer un nombre: 1 Entrer un nombre: 5 Entrer un nombre: 6 Entrer un nombre: 3 Entrer un nombre: 2 Entrer un nombre: 4 Entrer un nombre: 7 Entrer un nombre: 9 Entrer un nombre: 0 Tableau trié: 0 1 2 3 4 5 6 7 8 9
Algorithme TrierTab Variables i,j,tmp,myTab[10]:entiers Début Pour i de 1 jusqu❛à 10 faire Ecrire("Entrer un nombre:") Lire(myTab[i]) FinPour Pour i de 1 jusqu❛à 9 faire Pour j de i+1 jusqu'à 10 faire Si(myTab[j] < myTab[i]) alors tmp ← myTab[i] myTab[i] ← myTab[j] myTab[j] ← tmp FinSi FinPour FinPour Pour i de 1 jusqu❛à 10 faire Ecrire(myTab[i]) FinPour Fin
6. Ecrivez un algorithme qui demande d'entrer un tableau Tab de 10 nombres, et de placer les éléments pairs dans un tableau Tab1 et les éléments impairs dans un tableau Tab2. Affichez ensuite Tab1 et Tab2.
Exemple de sortie:
Tab : 1 5 2 4 9 3 3 6 8 7 Tab1: 2 4 6 8 Tab2: 1 5 9 3 3 7
Algorithme TabPairImpaire Variables i,j,k:entiers Tab[10],Tab1[10],Tab2[10]:tableaux d'entiers Début j ← 1 k ← 1 Ecrire("Tab:") Pour i de 1 à 10 faire Lire(Tab[i]) FinPour Pour i de 1 à 10 faire Si(Tab[i] mod 2 = 0) alors Tab1[j] ← Tab[i] j ← j + 1 SiNon Tab2[k] ← Tab[i] k ← k + 1 FinSi FinPour Ecrire("Tab1:") Pour i de 1 à j faire Ecrire(Tab1[i]) FinPour Ecrire("Tab2:") Pour i de 1 à k faire Ecrire(Tab2[i]) FinPour Fin
7. Écrire un algorithme qui compte le nombre d'éléments dupliqués dans un tableau de nombres entiers saisi par l'utilisateur.
Exemple de sortie:
Entrer un nombre: 5 Entrer un nombre: 1 Entrer un nombre: 5 Entrer un nombre: 6 Entrer un nombre: 3 Entrer un nombre: 5 Entrer un nombre: 4 Entrer un nombre: 7 Entrer un nombre: 9 Entrer un nombre: 5 Nombre total d'éléments dupliqués est: 4
Algorithme ElémentsDupliqués Variables myTab[10],compteur,i,j: entiers Début Pour i de 1 à 10 faire Ecrire("Enter un entier:") Lire(myTab[i]) FinPour compteur ← 0 Pour i de 1 à 10 faire Pour j de i+1 à 10 faire Si(myTab[i] = myTab[j]) alors compteur ← compteur + 1 FinSi FinPour FinPour Ecrire("Nombre total d'éléments dupliqués est:",compteur) Fin
8. Ecrivez un algorithme qui permet de saisir 5 nombres dans un tableau. Comptez ensuite le nombre d'éléments pairs et impairs.
Exemple de sortie:
Entrer un nombre: 1 Entrer un nombre: 3 Entrer un nombre: 2 Entrer un nombre: 6 Entrer un nombre: 9 Total des éléments pairs: 2 Total des éléments impaires: 3
Algorithme NbrPaireImpaire Variables myTab[10],i,pair,impair :entiers Début pair ← 0 impair ← 0 Pour i de 1 à 5 faire Ecrire("Entrer un nombre:") Lire(myTab[i]) FinPour Pour i de 1 à 5 faire Si(myTab[i] mod 2 = 0) alors pair ← pair + 1 SiNon impair ← impair + 1 FinSi FinPour Ecrire("Total des éléments pairs:",pair) Ecrire("Total des éléments impaires:",impair) Fin
9. Ecrivez un algorithme qui teste l'égalité de deux tableaux de nombres entiers (tailles 5). Le programme affiche TRUE si les éléments des deux tableaux correspondent, sinon il affiche FALSE.
Exemple de sortie:
1 2 3 4 5 1 2 3 4 5 TRUE 10 20 30 40 50 20 30 40 50 60 FALSE
Algorithme Comparer2Tableaux Variables Tab1[5],Tab2[5],i,not_equal: entiers Début not_equal ← 0 Pour i de 1 à 5 faire Lire(Tab1[i]) FinPour Pour i de 1 à 5 faire Lire(Tab2[i]) FinPour Pour i de 1 à 5 faire Si(Tab1[i] ≠ Tab2[i]) alors not_equal ← 1 FinSi FinPour Si(not_equal = 0) alors Ecrire("TRUE") SiNon Ecrire ("FALSE") FinSi Fin
10. Écrire un algorithme qui permet la saisie de 5 nombres et qui calcule la différence entre la somme des nombres pairs et la somme des nombres impairs. En utilisant les tableaux.
Par exemple : 3 5 2 4 6 => (2+4+6) - (3+5) = 4
Exemple de sortie:
Entrer un nombre: 3 Entrer un nombre: 5 Entrer un nombre: 2 Entrer un nombre: 4 Entrer un nombre: 6 La différence égale à 4
Algorithme CalcDifférence Variables myTab[5],i,sum: entiers Début sum ← 0 Pour i de 1 à 5 faire Ecrire("Entrer un nombre:") Lire(myTab[i]) Si(myTab[i] mod 2 = 0) alors sum ← sum + myTab[i] SiNon sum ← sum - myTab[i] FinSi FinPour Ecrire("La différence égale à ",sum) Fin
11. Écrire un algorithme qui place les zéro vers la fin du tableau, en maintenant l'ordre des éléments.
Exemple de sortie:
Entrée: 8 0 6 0 1 6 0 0 2 3 Sortie: 8 6 1 6 2 3 0 0 0 0
Algorithme ZéroALaFin Variables i,j,T[10],tmp: Entiers Début Pour i de 1 jusqu’à 10 faire Lire(T[i]) FinPour Pour i de 1 jusqu’à 10 faire Ecrire(T[i]) FinPour Pour i de 1 jusqu’à 9 faire Si(T[i] = 0) alors j ← i + 1; TantQue(T[j]=0 et j<9) faire j ← j + 1 FinTantQue tmp ← T[i] T[i]← T[j] T[j]← tmp FinSi FinPour Pour i de 1 jusqu’à 10 faire Ecrire(T[i]) FinPour Fin