Spécification de la fonction pos_min
Résultat : la position de la chaîne la mieux classée dans l'ordre alphabétique entre la case a et b d'un tableau de chaînes.
Traitement : Tant qu'on est pas sûr de quelle chaîne est la première entre les cases a et b du tableau, il faut parcourir tout le tableau (utilisation d'un boucle pour) ensuite comparer la chaîne supposée minimale avec l'élément du tableau en cours. Comparer deux chaînes signifie les comparer lettre par lettre de même rang j, jusqu'à pouvoir conclure laquelle est placée devant l'autre.
Exemple : la lettre "b" quand on compare "abbe" et "abba"
Ce qui signifie qu'on a deux cas :
1) la lettre comparée de rang j est la même
-Soit c'est la dernière lettre de l'une des deux chaînes et là on peut conclure que la moins longue en nombre de caractère est plus petite
-Soit ce n'est pas la dernière lettre, ce qui nous oblige à comparer la lettre de rang j+1 (donc pas de conclusion)
2) ou la lettre comparée de rang j est différente
Là nous pouvons tout de suite conclure:
-Soit la lettre est plus petite ; nous supposons alors que cette chaîne comparée est la chaîne minimale (en affectant i à posmin)
-Soit la lettre est plus grande, nous ne changeons pas de supposition
Données : les positions de début et de fin a et b : entiers
T : tab
Partager