SlideShare ist ein Scribd-Unternehmen logo
1 von 4
Downloaden Sie, um offline zu lesen
Institut Galilée Algorithmique et structures de données
Ingénieurs 1ère année (MACS/Télécom/Mesures/Energie) 2008/2009
Correction du T.D. 2
Les tableaux
1 Exercice 1
Ecrire les algorithmes permettant :
1. Le calcul du nombre d’occurences d’un élément donné dans un tableau.
Nb_occurences (T: Tableau d’entier, N: entier) : entier
VAR i,nb_occ : entiers
Debut
nb_occ <- 0
Pour i <- 1 a N Faire
Si T[i] = X
Alors nb_occ <- nb_occ + 1
Fsi
Fpour
retourner nb_occ
Fin
2. Le calcul de la moyenne et du minimum des éléments d’un tableau.
Moyenne (T: Tableau d’entier, N: entier) : réel
VAR somme, i: entiers
moyenne : réel
Début
somme <- 0
Pour i <- 1 a N Faire
somme <- somme + T[i]
Fpour
moyenne <- somme / N
retourner moyenne
Minimum (T: Tableau d’entier, N: entier): entier
VAR min, i: entiers
Début
min <- T[1]
Pour i <- 2 a N Faire
Si T[i]<min
Alors min=T[i]
Fsi
Fpour
retourner min
3. De tester si un tableau est trié.
1
Est_trie (T: Tableau d’entiers, N: entier): booléen
VAR i: entiers
est_trie: Booléen
Debut
i <- 1
Tant que i < N ET T[i] <= T[i+1] Faire
i <- i + 1
Ftque
est_trie <- (i = N)
retourner est_trie
Fin
4. Le calcul du produit scalaire de deux vecteurs réels u et v de dimension
n : u.v =
Pi=n
i=1 ui ∗ vi
Produit_scalaire (u: Tableau d’entiers, v: Tableau d’entiers, n:
entier): entier
VAR i, prod_scalaire: entiers
Debut
prod_scalaire <- 0
Pour i <- 1 a n Faire
prod_scalaire <- prod_scalaire + u[i] * v[i]
Fpour
retourner prod_scalaire;
Fin
2 Exercice 2
Ecrire l’algorithme effectuant le décalage des éléments d’un tableau.
Exemple :
• Tableau initial D E C A L A G E
• Tableau modifié (décalage à gauche) E C A L A G E D
Procédure Decalage_gauche (T: Tableau de caractères, N: entier)
VAR tmp: caractère
i: entier
Debut
tmp <- T[1]
Pour i <- 1 a N-1 Faire
T[i] <- T[i+1]
Ftque
T[N] <- tmp
Fin
3 Exercice 3
Ecrire l’algorithme qui calcule le produit de deux matrices carées réelles A =
(aij) et B = (bij) de dimension n : cij =
Pk=n
k=1 aik ∗ bkj.
2
Produit_matriciel (a: Matrice carrée , b: Matrice carrée, n:
entier): Matrice carrée
VAR c: Matrice carrée n*n
i: entier
Debut
Pour i <- 1 a n Faire
Pour j de 1 a n Faire
c[i][j] <- 0
Pour k de 1 a n Faire
c[i][j] <- c[i][j] + a[i][k] * b[k][j]
Fpour
Fpour
Fpour
retourner c
Fin
4 Exercice 4
Soit un tableau T avec T(i) ∈ {0, 1}. Ecrire un algorithme qui retourne la
position i dans le tableau telle que T[i] est le début de la plus longue suite
consécutive de zéros.
pos_suite_0 (t: Tableau d’entiers, n: entier): entier
VAR pos, lmax, lg, i: entiers
suite: Booléen
Debut
pos = -1
lmax = 0
suite = Faux
pour i
Pour i <- 1 a n Faire
Si t[i]= 0
Alors
Si NON suite
Alors
lg <- 0
suite = 1
Fsi
lg = lg+1
Sinon //t[i] diférent de zéro
Si suite = Vrai
Alors
suite <- Faux
Si lg > lmax
Alors
lmax = lg
pos = i - lg
Fsi
3
Fsi
Fsi
Fpour
Si suite=Vrai ET lg > lmax
Alors
pos = i - lg + 1
Fsi
return pos
Fin
5 Exercice 5
Ecrire un algorithme qui calcule le plus grand écart dans un tableau (l’écart est
la valeur absolue de la différence de deux éléments).
plus_grand_ecart (t: Tableau d’entiers, n: entier): entier
VAR: min, max, i: entiers
Debut
min = t[1]
max = t[1]
Pour i <- 2 a n Faire
Si t[i] > max
Alors
max = t[i]
Fsi
Si t[i] < min
Alors
min = t[i]
Fsi
Fpour
return max - min
Fin
4

Weitere ähnliche Inhalte

Was ist angesagt?

TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 
Les règles de passage
Les règles de passageLes règles de passage
Les règles de passagemarwa baich
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence Yassine Badri
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-CorrectionLilia Sfaxi
 
Algorithmique et methodes de programmation
Algorithmique et methodes de programmationAlgorithmique et methodes de programmation
Algorithmique et methodes de programmationSageKataliko1
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siNarûtö Bàl'Sèm
 
Mise en place de système d’information
Mise en place de système d’informationMise en place de système d’information
Mise en place de système d’informationPatrick Ostertag
 
Exercice 1 java Héritage
Exercice 1 java HéritageExercice 1 java Héritage
Exercice 1 java HéritageNadaBenLatifa
 
Développement Noyau Et Driver Sous Gnu Linux
Développement Noyau Et Driver Sous Gnu LinuxDéveloppement Noyau Et Driver Sous Gnu Linux
Développement Noyau Et Driver Sous Gnu LinuxThierry Gayet
 
Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Faycel Chaoua
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionLilia Sfaxi
 
Généralités sur les systèmes informatiques
Généralités sur les systèmes informatiquesGénéralités sur les systèmes informatiques
Généralités sur les systèmes informatiquesaboulaylamce
 
Cours des bases de données
Cours des bases de données Cours des bases de données
Cours des bases de données yassine kchiri
 
Ch2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfCh2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfFadouaBouafifSamoud
 

Was ist angesagt? (20)

TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
02 correction-td smi-s3-algo2
02 correction-td smi-s3-algo202 correction-td smi-s3-algo2
02 correction-td smi-s3-algo2
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
Tp fichier et dossier
Tp fichier et dossierTp fichier et dossier
Tp fichier et dossier
 
Les règles de passage
Les règles de passageLes règles de passage
Les règles de passage
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
Algorithmique et methodes de programmation
Algorithmique et methodes de programmationAlgorithmique et methodes de programmation
Algorithmique et methodes de programmation
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
 
Mise en place de système d’information
Mise en place de système d’informationMise en place de système d’information
Mise en place de système d’information
 
Exercice 1 java Héritage
Exercice 1 java HéritageExercice 1 java Héritage
Exercice 1 java Héritage
 
Développement Noyau Et Driver Sous Gnu Linux
Développement Noyau Et Driver Sous Gnu LinuxDéveloppement Noyau Et Driver Sous Gnu Linux
Développement Noyau Et Driver Sous Gnu Linux
 
Cours access
Cours accessCours access
Cours access
 
Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
 
Généralités sur les systèmes informatiques
Généralités sur les systèmes informatiquesGénéralités sur les systèmes informatiques
Généralités sur les systèmes informatiques
 
Tp2 - Latex
Tp2 - LatexTp2 - Latex
Tp2 - Latex
 
Cours des bases de données
Cours des bases de données Cours des bases de données
Cours des bases de données
 
Ch2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfCh2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdf
 
Modelisation conception SI
Modelisation conception SIModelisation conception SI
Modelisation conception SI
 

Ähnlich wie Correction td2

Fiche2 ex-sous-programme
Fiche2 ex-sous-programmeFiche2 ex-sous-programme
Fiche2 ex-sous-programmeBaghdadi Wajih
 
Chapitre 3 NP-complétude
Chapitre 3 NP-complétudeChapitre 3 NP-complétude
Chapitre 3 NP-complétudeSana Aroussi
 
éNoncés+corrections bac2009
éNoncés+corrections bac2009éNoncés+corrections bac2009
éNoncés+corrections bac2009Morom Bil Morom
 
Chapitre 2 complexité
Chapitre 2 complexitéChapitre 2 complexité
Chapitre 2 complexitéSana Aroussi
 
Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)salah fenni
 
124776153 td-automatique-1 a-jmd-2011
124776153 td-automatique-1 a-jmd-2011124776153 td-automatique-1 a-jmd-2011
124776153 td-automatique-1 a-jmd-2011sunprass
 
Chap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-rechercheChap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-rechercheRiadh Harizi
 
Cours Algorithme: Tableau
Cours Algorithme: TableauCours Algorithme: Tableau
Cours Algorithme: TableauInforMatica34
 
Matlab Travaux Pratique
Matlab Travaux Pratique Matlab Travaux Pratique
Matlab Travaux Pratique Smee Kaem Chann
 
Les algorithmes d'arithmetique
Les algorithmes d'arithmetiqueLes algorithmes d'arithmetique
Les algorithmes d'arithmetiquemohamed_SAYARI
 
Résumé Algorithme et Programmation
Résumé Algorithme et ProgrammationRésumé Algorithme et Programmation
Résumé Algorithme et Programmationborhen boukthir
 
Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)DriNox NordisTe
 
Corrigé iscae informatique 2013
Corrigé iscae informatique 2013Corrigé iscae informatique 2013
Corrigé iscae informatique 2013Yassine Anddam
 
eExercices corrigesdivers
eExercices corrigesdiverseExercices corrigesdivers
eExercices corrigesdiversHajar Yazine
 
Exercicescorrigesdivers
ExercicescorrigesdiversExercicescorrigesdivers
ExercicescorrigesdiversKarim Amane
 

Ähnlich wie Correction td2 (20)

Fiche2 ex-sous-programme
Fiche2 ex-sous-programmeFiche2 ex-sous-programme
Fiche2 ex-sous-programme
 
Chapitre 3 NP-complétude
Chapitre 3 NP-complétudeChapitre 3 NP-complétude
Chapitre 3 NP-complétude
 
transparents-Algo-complexite.pdf
transparents-Algo-complexite.pdftransparents-Algo-complexite.pdf
transparents-Algo-complexite.pdf
 
éNoncés+corrections bac2009
éNoncés+corrections bac2009éNoncés+corrections bac2009
éNoncés+corrections bac2009
 
Chapitre 2 complexité
Chapitre 2 complexitéChapitre 2 complexité
Chapitre 2 complexité
 
Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)
 
Cours d'algorithmique
Cours d'algorithmiqueCours d'algorithmique
Cours d'algorithmique
 
124776153 td-automatique-1 a-jmd-2011
124776153 td-automatique-1 a-jmd-2011124776153 td-automatique-1 a-jmd-2011
124776153 td-automatique-1 a-jmd-2011
 
Chap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-rechercheChap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-recherche
 
Cours Algorithme: Tableau
Cours Algorithme: TableauCours Algorithme: Tableau
Cours Algorithme: Tableau
 
Matlab Travaux Pratique
Matlab Travaux Pratique Matlab Travaux Pratique
Matlab Travaux Pratique
 
Les algorithmes d'arithmetique
Les algorithmes d'arithmetiqueLes algorithmes d'arithmetique
Les algorithmes d'arithmetique
 
Resume algorithme
Resume algorithmeResume algorithme
Resume algorithme
 
Résumé Algorithme et Programmation
Résumé Algorithme et ProgrammationRésumé Algorithme et Programmation
Résumé Algorithme et Programmation
 
Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)
 
coursAlgo_V5.pdf
coursAlgo_V5.pdfcoursAlgo_V5.pdf
coursAlgo_V5.pdf
 
Corrigé iscae informatique 2013
Corrigé iscae informatique 2013Corrigé iscae informatique 2013
Corrigé iscae informatique 2013
 
eExercices corrigesdivers
eExercices corrigesdiverseExercices corrigesdivers
eExercices corrigesdivers
 
Exercicescorrigesdivers
ExercicescorrigesdiversExercicescorrigesdivers
Exercicescorrigesdivers
 
Slide matlab
Slide matlab Slide matlab
Slide matlab
 

Correction td2

  • 1. Institut Galilée Algorithmique et structures de données Ingénieurs 1ère année (MACS/Télécom/Mesures/Energie) 2008/2009 Correction du T.D. 2 Les tableaux 1 Exercice 1 Ecrire les algorithmes permettant : 1. Le calcul du nombre d’occurences d’un élément donné dans un tableau. Nb_occurences (T: Tableau d’entier, N: entier) : entier VAR i,nb_occ : entiers Debut nb_occ <- 0 Pour i <- 1 a N Faire Si T[i] = X Alors nb_occ <- nb_occ + 1 Fsi Fpour retourner nb_occ Fin 2. Le calcul de la moyenne et du minimum des éléments d’un tableau. Moyenne (T: Tableau d’entier, N: entier) : réel VAR somme, i: entiers moyenne : réel Début somme <- 0 Pour i <- 1 a N Faire somme <- somme + T[i] Fpour moyenne <- somme / N retourner moyenne Minimum (T: Tableau d’entier, N: entier): entier VAR min, i: entiers Début min <- T[1] Pour i <- 2 a N Faire Si T[i]<min Alors min=T[i] Fsi Fpour retourner min 3. De tester si un tableau est trié. 1
  • 2. Est_trie (T: Tableau d’entiers, N: entier): booléen VAR i: entiers est_trie: Booléen Debut i <- 1 Tant que i < N ET T[i] <= T[i+1] Faire i <- i + 1 Ftque est_trie <- (i = N) retourner est_trie Fin 4. Le calcul du produit scalaire de deux vecteurs réels u et v de dimension n : u.v = Pi=n i=1 ui ∗ vi Produit_scalaire (u: Tableau d’entiers, v: Tableau d’entiers, n: entier): entier VAR i, prod_scalaire: entiers Debut prod_scalaire <- 0 Pour i <- 1 a n Faire prod_scalaire <- prod_scalaire + u[i] * v[i] Fpour retourner prod_scalaire; Fin 2 Exercice 2 Ecrire l’algorithme effectuant le décalage des éléments d’un tableau. Exemple : • Tableau initial D E C A L A G E • Tableau modifié (décalage à gauche) E C A L A G E D Procédure Decalage_gauche (T: Tableau de caractères, N: entier) VAR tmp: caractère i: entier Debut tmp <- T[1] Pour i <- 1 a N-1 Faire T[i] <- T[i+1] Ftque T[N] <- tmp Fin 3 Exercice 3 Ecrire l’algorithme qui calcule le produit de deux matrices carées réelles A = (aij) et B = (bij) de dimension n : cij = Pk=n k=1 aik ∗ bkj. 2
  • 3. Produit_matriciel (a: Matrice carrée , b: Matrice carrée, n: entier): Matrice carrée VAR c: Matrice carrée n*n i: entier Debut Pour i <- 1 a n Faire Pour j de 1 a n Faire c[i][j] <- 0 Pour k de 1 a n Faire c[i][j] <- c[i][j] + a[i][k] * b[k][j] Fpour Fpour Fpour retourner c Fin 4 Exercice 4 Soit un tableau T avec T(i) ∈ {0, 1}. Ecrire un algorithme qui retourne la position i dans le tableau telle que T[i] est le début de la plus longue suite consécutive de zéros. pos_suite_0 (t: Tableau d’entiers, n: entier): entier VAR pos, lmax, lg, i: entiers suite: Booléen Debut pos = -1 lmax = 0 suite = Faux pour i Pour i <- 1 a n Faire Si t[i]= 0 Alors Si NON suite Alors lg <- 0 suite = 1 Fsi lg = lg+1 Sinon //t[i] diférent de zéro Si suite = Vrai Alors suite <- Faux Si lg > lmax Alors lmax = lg pos = i - lg Fsi 3
  • 4. Fsi Fsi Fpour Si suite=Vrai ET lg > lmax Alors pos = i - lg + 1 Fsi return pos Fin 5 Exercice 5 Ecrire un algorithme qui calcule le plus grand écart dans un tableau (l’écart est la valeur absolue de la différence de deux éléments). plus_grand_ecart (t: Tableau d’entiers, n: entier): entier VAR: min, max, i: entiers Debut min = t[1] max = t[1] Pour i <- 2 a n Faire Si t[i] > max Alors max = t[i] Fsi Si t[i] < min Alors min = t[i] Fsi Fpour return max - min Fin 4