SlideShare uma empresa Scribd logo
1 de 4
Baixar para ler offline
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

Mais conteúdo relacionado

Mais procurados

Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
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
 
Les algorithmes recurrents
Les algorithmes recurrentsLes algorithmes recurrents
Les algorithmes recurrentsmohamed_SAYARI
 
Culture Entrepreneuriale Cours.pdf
Culture Entrepreneuriale Cours.pdfCulture Entrepreneuriale Cours.pdf
Culture Entrepreneuriale Cours.pdfssuserc06f96
 
Serie recurrents & arithmetiques
Serie recurrents & arithmetiquesSerie recurrents & arithmetiques
Serie recurrents & arithmetiquesmohamed_SAYARI
 
Fiche metiers du formateur tellen les rythmes d'apprentissage 2
Fiche metiers du formateur tellen   les rythmes d'apprentissage 2Fiche metiers du formateur tellen   les rythmes d'apprentissage 2
Fiche metiers du formateur tellen les rythmes d'apprentissage 2pedagoform pedago
 
Gestion du temps communication prof
Gestion du temps communication profGestion du temps communication prof
Gestion du temps communication profFataltigers06
 
Coursalgorithmique
CoursalgorithmiqueCoursalgorithmique
Coursalgorithmiquenicodeff
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesAnass41
 
Chap7 simulation numérique
Chap7 simulation numériqueChap7 simulation numérique
Chap7 simulation numériqueMariem ZAOUALI
 
Analyse de données - 2Cours officiel.pdf
Analyse de données - 2Cours officiel.pdfAnalyse de données - 2Cours officiel.pdf
Analyse de données - 2Cours officiel.pdfoussamaEchouiyab
 
Intelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleIntelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleECAM Brussels Engineering School
 

Mais procurados (20)

Exercices algo
Exercices algoExercices algo
Exercices algo
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
Tp1 matlab
Tp1 matlab Tp1 matlab
Tp1 matlab
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
 
Les algorithmes recurrents
Les algorithmes recurrentsLes algorithmes recurrents
Les algorithmes recurrents
 
Culture Entrepreneuriale Cours.pdf
Culture Entrepreneuriale Cours.pdfCulture Entrepreneuriale Cours.pdf
Culture Entrepreneuriale Cours.pdf
 
Serie recurrents & arithmetiques
Serie recurrents & arithmetiquesSerie recurrents & arithmetiques
Serie recurrents & arithmetiques
 
01 correction-td smia-s2-info2
01 correction-td smia-s2-info201 correction-td smia-s2-info2
01 correction-td smia-s2-info2
 
La Gestion du Temps
La Gestion du TempsLa Gestion du Temps
La Gestion du Temps
 
Récursivité
RécursivitéRécursivité
Récursivité
 
Fiche metiers du formateur tellen les rythmes d'apprentissage 2
Fiche metiers du formateur tellen   les rythmes d'apprentissage 2Fiche metiers du formateur tellen   les rythmes d'apprentissage 2
Fiche metiers du formateur tellen les rythmes d'apprentissage 2
 
Serie2
Serie2Serie2
Serie2
 
Gestion du temps communication prof
Gestion du temps communication profGestion du temps communication prof
Gestion du temps communication prof
 
Ordonnancement
OrdonnancementOrdonnancement
Ordonnancement
 
Coursalgorithmique
CoursalgorithmiqueCoursalgorithmique
Coursalgorithmique
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de Données
 
Chap7 simulation numérique
Chap7 simulation numériqueChap7 simulation numérique
Chap7 simulation numérique
 
Correction
CorrectionCorrection
Correction
 
Analyse de données - 2Cours officiel.pdf
Analyse de données - 2Cours officiel.pdfAnalyse de données - 2Cours officiel.pdf
Analyse de données - 2Cours officiel.pdf
 
Intelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleIntelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielle
 

Semelhante a 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
 

Semelhante a 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