SlideShare une entreprise Scribd logo
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

Contenu connexe

Tendances

Chap IV : Théorie des graphes
Chap IV : Théorie des graphesChap IV : Théorie des graphes
Chap IV : Théorie des graphes
Mohammed TAMALI
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)abdellah12
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite completChahrawoods Dmz
 
02 correction-td smi-s3-algo2
02 correction-td smi-s3-algo202 correction-td smi-s3-algo2
02 correction-td smi-s3-algo2
L’Université Hassan 1er Settat
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdf
salah fenni
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
Lilia Sfaxi
 
01 correction-td smia-s2-info2
01 correction-td smia-s2-info201 correction-td smia-s2-info2
01 correction-td smia-s2-info2
L’Université Hassan 1er Settat
 
Cours complet excel détaillé
Cours complet excel détailléCours complet excel détaillé
Cours complet excel détailléPaul Kamga
 
Fiche de TP 4 sur les bases de données avec les SGBD(Système de Gestion des B...
Fiche de TP 4 sur les bases de données avec les SGBD(Système de Gestion des B...Fiche de TP 4 sur les bases de données avec les SGBD(Système de Gestion des B...
Fiche de TP 4 sur les bases de données avec les SGBD(Système de Gestion des B...
ATPENSC-Group
 
Support de cours ACCESS
Support de cours ACCESSSupport de cours ACCESS
Support de cours ACCESS
Chingongou ­
 
TP C++ : Correction
TP C++ : CorrectionTP C++ : Correction
Traitement d'image sous Matlab
Traitement d'image sous Matlab  Traitement d'image sous Matlab
Traitement d'image sous Matlab
Hajer Dahech
 
Cours : les listes chainées Prof. KHALIFA MANSOURI
Cours : les listes chainées  Prof. KHALIFA MANSOURI Cours : les listes chainées  Prof. KHALIFA MANSOURI
Cours : les listes chainées Prof. KHALIFA MANSOURI
Mansouri Khalifa
 
Chapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptxChapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptx
FerdawsBNasrBSalah
 
Algorithmique programmation2018
Algorithmique programmation2018Algorithmique programmation2018
Algorithmique programmation2018
salah fenni
 
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
 
TP N°1 sketchup.ppt
TP N°1 sketchup.pptTP N°1 sketchup.ppt
TP N°1 sketchup.ppt
PROFPROF11
 
TP Informatique 1 excel
TP Informatique 1 excelTP Informatique 1 excel
TP Informatique 1 excelZhour Add
 

Tendances (20)

Serie2
Serie2Serie2
Serie2
 
Chap IV : Théorie des graphes
Chap IV : Théorie des graphesChap IV : Théorie des graphes
Chap IV : Théorie des graphes
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
02 correction-td smi-s3-algo2
02 correction-td smi-s3-algo202 correction-td smi-s3-algo2
02 correction-td smi-s3-algo2
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdf
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
01 correction-td smia-s2-info2
01 correction-td smia-s2-info201 correction-td smia-s2-info2
01 correction-td smia-s2-info2
 
Cours complet excel détaillé
Cours complet excel détailléCours complet excel détaillé
Cours complet excel détaillé
 
Fiche de TP 4 sur les bases de données avec les SGBD(Système de Gestion des B...
Fiche de TP 4 sur les bases de données avec les SGBD(Système de Gestion des B...Fiche de TP 4 sur les bases de données avec les SGBD(Système de Gestion des B...
Fiche de TP 4 sur les bases de données avec les SGBD(Système de Gestion des B...
 
Support de cours ACCESS
Support de cours ACCESSSupport de cours ACCESS
Support de cours ACCESS
 
Correction
CorrectionCorrection
Correction
 
TP C++ : Correction
TP C++ : CorrectionTP C++ : Correction
TP C++ : Correction
 
Traitement d'image sous Matlab
Traitement d'image sous Matlab  Traitement d'image sous Matlab
Traitement d'image sous Matlab
 
Cours : les listes chainées Prof. KHALIFA MANSOURI
Cours : les listes chainées  Prof. KHALIFA MANSOURI Cours : les listes chainées  Prof. KHALIFA MANSOURI
Cours : les listes chainées Prof. KHALIFA MANSOURI
 
Chapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptxChapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptx
 
Algorithmique programmation2018
Algorithmique programmation2018Algorithmique programmation2018
Algorithmique programmation2018
 
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)
 
TP N°1 sketchup.ppt
TP N°1 sketchup.pptTP N°1 sketchup.ppt
TP N°1 sketchup.ppt
 
TP Informatique 1 excel
TP Informatique 1 excelTP Informatique 1 excel
TP Informatique 1 excel
 

Similaire à Correction td2

Fiche2 ex-sous-programme
Fiche2 ex-sous-programmeFiche2 ex-sous-programme
Fiche2 ex-sous-programme
Baghdadi Wajih
 
Chapitre 3 NP-complétude
Chapitre 3 NP-complétudeChapitre 3 NP-complétude
Chapitre 3 NP-complétude
Sana Aroussi
 
transparents-Algo-complexite.pdf
transparents-Algo-complexite.pdftransparents-Algo-complexite.pdf
transparents-Algo-complexite.pdf
abdallahyoubiidrissi1
 
é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
 
Cours d'algorithmique
Cours d'algorithmiqueCours d'algorithmique
Cours d'algorithmique
ABDESSELAM ARROU
 
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
sunprass
 
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
Riadh Harizi
 
Cours Algorithme: Tableau
Cours Algorithme: TableauCours Algorithme: Tableau
Cours Algorithme: Tableau
InforMatica34
 
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 Programmation
borhen boukthir
 
Resume algorithme
Resume algorithmeResume algorithme
Resume algorithme
NAWEL_DERBEL
 
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
 
coursAlgo_V5.pdf
coursAlgo_V5.pdfcoursAlgo_V5.pdf
coursAlgo_V5.pdf
MonssifNajim1
 
Corrigé iscae informatique 2013
Corrigé iscae informatique 2013Corrigé iscae informatique 2013
Corrigé iscae informatique 2013
Yassine Anddam
 
eExercices corrigesdivers
eExercices corrigesdiverseExercices corrigesdivers
eExercices corrigesdivers
Hajar Yazine
 
Exercicescorrigesdivers
ExercicescorrigesdiversExercicescorrigesdivers
ExercicescorrigesdiversKarim Amane
 
Slide matlab
Slide matlab Slide matlab
Slide matlab
Smee Kaem Chann
 

Similaire à 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
 
Résumé Algorithme et Programmation
Résumé Algorithme et ProgrammationRésumé Algorithme et Programmation
Résumé Algorithme et Programmation
 
Resume algorithme
Resume algorithmeResume algorithme
Resume algorithme
 
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