FinPour
FinFonc
Voici un petit programme pour l’exploiter :
PROGRAMME TRITAB
CONST
INDICES=10
VAR
t :tableau[1..INDICES] ←{10,5,8,7,3,1,6,9,4,2} d’entiers
i :entier
Début
t=tri_tableau(t,INDICES)
Pour i de 1 à INDICES Faire
Afficher t[i]
FinPour
Fin
En Java c’est encore plus simple : il se fiche de la taille des tableaux passés en paramètres, et en plus pour pouvez
obtenir la taille d’un tableau. La fonction tri_ tableau() ne reçoit donc qu’un seul paramètre, le tableau à trier, et n’est
même pas obligée de retourner le tableau car il est passé en référence.
class chap6_tri {
static void tri_tableau(int[] tab) {
int i,mem,pos,cpt;
cpt=tab.length;
for(i=1;i
mem=tab[i];
pos=i-1;
while((pos>=0) && (tab[pos]>mem)) {
tab[pos+1]=tab[pos];
pos--;
}
tab[pos+1]=mem;
}
}
public static void main(String[] args) {
int t[]={48,17,25,9,34};
int i,cpt;
cpt=t.length;
System.out.println("Avant :");
for(i=0;i
System.out.println();
tri_tableau(t);
System.out.println("Après :");
for(i=0;i
System.out.println();
}
}
Le résultat est le suivant :
Avant :
48 17 25 9 34
Après :
9 17 25 34 48
- 17 -
© ENI Editions - All rigths reserved - Jonifar lina
140
FinFonc
Voici un petit programme pour l’exploiter :
PROGRAMME TRITAB
CONST
INDICES=10
VAR
t :tableau[1..INDICES] ←{10,5,8,7,3,1,6,9,4,2} d’entiers
i :entier
Début
t=tri_tableau(t,INDICES)
Pour i de 1 à INDICES Faire
Afficher t[i]
FinPour
Fin
En Java c’est encore plus simple : il se fiche de la taille des tableaux passés en paramètres, et en plus pour pouvez
obtenir la taille d’un tableau. La fonction tri_ tableau() ne reçoit donc qu’un seul paramètre, le tableau à trier, et n’est
même pas obligée de retourner le tableau car il est passé en référence.
class chap6_tri {
static void tri_tableau(int[] tab) {
int i,mem,pos,cpt;
cpt=tab.length;
for(i=1;i
pos=i-1;
while((pos>=0) && (tab[pos]>mem)) {
tab[pos+1]=tab[pos];
pos--;
}
tab[pos+1]=mem;
}
}
public static void main(String[] args) {
int t[]={48,17,25,9,34};
int i,cpt;
cpt=t.length;
System.out.println("Avant :");
for(i=0;i
tri_tableau(t);
System.out.println("Après :");
for(i=0;i
}
}
Le résultat est le suivant :
Avant :
48 17 25 9 34
Après :
9 17 25 34 48
- 17 -
© ENI Editions - All rigths reserved - Jonifar lina
140
