Ce blog est fait pour aider à la compréhension des maths et ses mises en application dans différents langages de programmation ( Algobox, Python, calculatrice Ti83)
**********************************************************************************************
Calcul du Plus Grand Diviseur Commun
La méthode utilisée ici est celle dite de l'algorithme d'Euclide.
Cet algorithme affiche toutes les étapes intermédiaires pour trouver le PGCD de a et de b.
**********************************************************************************************
1 VARIABLES
2 A EST_DU_TYPE NOMBRE
3 B EST_DU_TYPE NOMBRE
4 Q EST_DU_TYPE NOMBRE
5 R EST_DU_TYPE NOMBRE
6 M EST_DU_TYPE NOMBRE
7 N EST_DU_TYPE NOMBRE
8 L EST_DU_TYPE LISTE
9 C EST_DU_TYPE NOMBRE
10 D EST_DU_TYPE NOMBRE
11 DEBUT_ALGORITHME
12 LIRE A
13 LIRE B
14 C PREND_LA_VALEUR A
15 D PREND_LA_VALEUR B
16 SI (A<B) ALORS
17 DEBUT_SI
18 Q PREND_LA_VALEUR A
19 A PREND_LA_VALEUR B
20 B PREND_LA_VALEUR Q
21 FIN_SI
22 SI (A==B) ALORS
23 DEBUT_SI
24 AFFICHER "le PGCD de "
25 AFFICHER C
26 AFFICHER " et de "
27 AFFICHER D
28 AFFICHER " est "
29 AFFICHER C
30 FIN_SI
31 SINON
32 DEBUT_SINON
33 SI (A%B==0) ALORS
34 DEBUT_SI
35 AFFICHER "le PGCD de "
36 AFFICHER C
37 AFFICHER " et de "
38 AFFICHER D
39 AFFICHER " est "
40 FIN_SI
41 SINON
42 DEBUT_SINON
43 Q PREND_LA_VALEUR 1
44 R PREND_LA_VALEUR 1
45 N PREND_LA_VALEUR 0
46 TANT_QUE (R!=0) FAIRE
47 DEBUT_TANT_QUE
48 M PREND_LA_VALEUR B*Q
49 R PREND_LA_VALEUR A-M
50 TANT_QUE (R>=M) FAIRE
51 DEBUT_TANT_QUE
52 Q PREND_LA_VALEUR Q+1
53 M PREND_LA_VALEUR B*Q
54 FIN_TANT_QUE
55 R PREND_LA_VALEUR A-M
56 L[N] PREND_LA_VALEUR R
57 N PREND_LA_VALEUR N+1
58 AFFICHER "étape numéro "
59 AFFICHER N
60 AFFICHER A
61 AFFICHER " = "
62 AFFICHER B
63 AFFICHER " x "
64 AFFICHER Q
65 AFFICHER " + "
66 AFFICHER R
67 A PREND_LA_VALEUR B
68 B PREND_LA_VALEUR R
69 Q PREND_LA_VALEUR 1
70 FIN_TANT_QUE
71 AFFICHER "le PGCD de "
72 AFFICHER C
73 AFFICHER " et de "
74 AFFICHER D
75 AFFICHER " est"
76 AFFICHER L[N-2]
77 FIN_SINON
78 FIN_SINON
79 FIN_ALGORITHME