Tri d'un tableau

GW-Basic, utilisé par PC-Basic
Exemple de programmation

PC-BASIC

Trier un tableau avec la méthode Bubble - Sort

Ce programme utilise WHILE ... WEND, FOR ... NEXT et IF ... THEN

SWAP permet de changer les valeurs entre deux variables

5 REM Bubble - Sort
10 DIM A(6)
20 A(1)=12:A(2)=5:A(3)=1
30 A(4)=23:A(5)=11:A(6)=3
40 FLIPS=1
50 WHILE FLIPS
60 FLIPS=0
70 FOR N=1 TO 5
80 IF A(N)>A(N+1) THEN SWAP A(N), A(N+1): FLIPS=1
90 NEXT N
100 WEND
110 FOR N=1 TO 6
120 PRINT A(N), 'La virgule permet d'afficher les nombres en colonne
130 NEXT N

On peut utiliser ce programme pour faire un générateur de combinaison de loterie (6/49 ici)

RANDOMIZE TIMER permet au programme de toujours générer des nombres aléatoire différents à chaque nouvelle exécution d'un programme.

INT(49*RND(1)+1) permet de générer des nombre de 1 à 49

5 REM Bubble - Sort
10 RANDOMIZE TIMER
20 DIM A(6)
30 A(1)=INT(49*RND(1)+1)
40 A(2)=INT(49*RND(1)+1):IF A(2)=A(1) THEN 40
50 A(3)=INT(49*RND(1)+1):IF A(3)=A(1) OR A(3)=A(2) THEN 50
60 A(4)=INT(49*RND(1)+1):IF A(4)=A(1) OR A(4)=A(2) OR A(4)=A(3) THEN 60
70 A(5)=INT(49*RND(1)+1):IF A(5)=A(1) OR A(5)=A(2) OR A(5)=A(3) OR A(5)=A(4) THEN 70
80 A(6)=INT(49*RND(1)+1):IF A(6)=A(1) OR A(6)=A(2) OR A(6)=A(3) OR A(6)=A(4) OR A(6)=A(5)THEN 80
110 FLIPS=1
120 WHILE FLIPS
130 FLIPS=0
140 FOR N=1 TO 5
150 IF A(N)>A(N+1) THEN SWAP A(N), A(N+1): FLIPS=1
160 NEXT N
170 WEND
180 FOR N=1 TO 6
190 PRINT A(N),
200 NEXT N

 

 

 

 

 

 

 

Recherche personnalisée