Dpartement des Mathmatiques et dInformatique 02/02/2014 1 me Anne MI (Semestre 1) Dure : 01H 30mn
Examen Final Initiation lAlgorithmique
Les documents, calculatrices et tlphones portables sont interdits. Utilisez les commentaires dans les algorithmes.
Exercice 1 : (8,50 points) Soit lalgorithme suivant : ALGORITHME myster CONSTANTE Max =10 VARIABLE i, k, m : ENTIER T : Tableau[1..Max] de BOOLEEN DEBUT i1 m0 TANTQUE i<=Max FAIRE DEBUT k0 TANTQUE (i<=Max) ET (T[i] = vrai) FAIRE DEBUT kk + 1 ii + 1 FIN SI k>m ALORS mk ii + 1 FIN ECRIRE (Le rsultat est : , m) FIN
1. On considre le tableau T contenant la suite : vrai, faux, vrai, vrai, vrai, vrai, faux, vrai, vrai, faux Quel est leffet de lexcution de lalgorithme myster ? (drouler lalgorithme). 2. En gnral, que fait lalgorithme myster ? 3. Quel est le contenu du tableau T si lalgorithme myster affiche la valeur 0 ? 4. Quel est le contenu du tableau T si lalgorithme myster affiche la valeur Max ?
Page 2/2
Exercice 2 : (8,50 points) On se propose dcrire lalgorithme renverse pour renverser le contenue dun tableau. Par exemple pour le tableau t =[1, 2, 3, 4], aprs lexcution de lalgorithme, t contiendra [4, 3, 2, 1]. Lalgorithme suivant natteint pas lobjectif fix : ALGORITHME renverse CONSTANTE Max = valeur_constante VARIABLE i, aux : ENTIER t : Tableau [1..Max] de ENTIER DEBUT POUR i DE 1 A Max FAIRE DEBUT aux = t[i] t[i] = t[Max -i +1] t[Max -i +1]= aux FIN FIN
1. Le vrifier en observant le rsultat de lexcution de lalgorithme sur le tableau t =[1, 2, 3, 4], dans ce cas Max = 4. Quel est le contenu de t aprs chaque tour de boucle ? 2. Proposer une modification de lalgorithme renverse pour renverser effectivement le tableau. 3. Un tableau est dit palindrome si on lit la mme suite de nombres en le parcourant de gauche droite ou de droite gauche. Par exemple [6, 2, 7, 4, 7, 2, 6] est un tableau palindrome , [2, 0, 0, 2] galement. Ecrire un algorithme qui affiche Vrai ou Faux suivant quun tableau t est un palindrome ou pas.
Exercice 3 : (3,00 points) Chacun des deux algorithmes prsents ci-dessous contient une erreur. Laquelle ?
ALGORITHME essai1 VARIABLE i : ENTIER Tab : tableau [1..10] de ENTIER DEBUT TANTQUE (i<=10) FAIRE DEBUT LIRE (Tab[i]) ii+1 FIN FIN ALGORITHME essai2 VARIABLE i : ENTIER Tab : tableau [1..10] de ENTIER DEBUT POUR i DE 1 A 10 FAIRE DEBUT SI Tab[i+1] < Tab[i] ALORS Tab[i] 0 SINON LIRE (Tab[i]) FIN FIN