3. Écrire une fonction (inspirée de la précédente) permettant d’aller chercher le plus petit élément d’une partie d’un
tableau donné en argument. On passera en argument le tableau et sa longueur, ainsi que les indices de début et de
fin de la partie du tableau qui nous intéresse. La fonction renverra l’indice de ce plus petit élément.
Exemple
Si un tableau tab contient [1, 4, 3, 7, 2], la fonction pluspetitdusoustableau(tab,5,1,3)
renverra la valeur 2 (indice de la case contenant la plus petite valeur du sous tableau [4, 3, 7], délimité par
l’indice de début 1 et l’indice de fin 3.
Solution :
fonction pluspetiti(var t:entier[] par reference,
n,p,q:entier par valeur):entier
var imin,i:entier
debut
si n≥qet q≥pet p≥0alors
imin=p
pour i allant de p+1 aqfaire
si t[min]>t[i]alors
imin=i
finsi
fait
retourner imin
sinon
// erreur
finsi
fin
4. En utilisant les fonctions précédentes, écrire une fonction permettant de trier un tableau du plus petit au plus grand.
Solution :
fonction trier(var t:entier[] par reference,
n:entier par valeur)
var i:entier
debut
pour i allant de 0an-1 faire
imin=pluspetiti(t,n,i,n)
permutter(t,i,imin)
// ou directement : permutter(t,i,pluspetiti(t, n, i, n))
fait
fin
2 Python
Écrire un programme qui affiche un triangle de taille n avec des étoiles.
Exemple
#python triangle.py
n? 4
*
**
***
****
Solution :
a=input("n?")
s=""
for i in range(a):
for j in range(i):
s+="*"
s+="\n"
print s
Solution plus simple :
a=input("n?")
s=""
for i in range(a):
s+="*"
print s
Master Handi – Université Paris 8 – 2012 Algo/Python