Des règles n'ayant pas été définies strictement on peut présenter l'algorithme de plusieurs façons. Voici une présentation.

Etape 1 : l'algorithme global peut être décomposé en une suite de plusieurs modules :

  1. Saisie des valeurs a et b "Entrer a, b"
  2. Si a < b, échanger les valeurs de a et b
  3. Calcul du PGCD de a et b. Spécification du module :
    Pré-conditions : a et b 2 entiers, a >= b
    Post-conditions : a contient le PGCD des valeurs de a et b données au départ.
  4. Affichage du PGCD.

Etape 2 : code pour échanger les valeurs de a et b. C'est une suite de modules.

t := a
a := b
b := t

Etape 3 : décomposition du calcul du PGCD.

C'est une répétition "tant que (b != 0) répéter CALCUL"

CALCUL est une suite d'instruction :
r := a modulo b
a := b
b := r

Etape 4 : Affichage du PGCD "afficher a"

Etape 5 : réunir tous les modules.

entrer a et b
si (a < b) {
  t := a
  a := b
  b := t
}
tant que (b != 0) {
  r := a modulo b
  a := b
  b := r
}
afficher a

Remarque importante :

A chaque étape il faut spécifier avec précision ce que fait chaque module nouvellement introduit pour ne pas avoir à parcourir le code des autres modules lorsqu'on écrit le code du module.