Bonjour, je dois faire un algorithme en me basant sur ceci et je sais vraiment pas le faire, j'espere que vous pourrez m'aider

Rédiger une version affichant toutes les occurrences du plus grand écart par la position des nombres concernés dans le tableau.

On souhaite un affichage comme celui-ci, p.ex. pour le tableau ci-dessous

Le plus grand écart est 42 entre les valeurs aux indices (1, 3), (1, 9), (3, 4), (4, 9)

45 21 3 45 12 30 11 41 3 39 15


Voici un algorithme que j'ai su faire pour afficher le premier plus grand écart
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 
Algorithme plus_grand_ecart ; 
 
  constante tSup = 100 ; 
 
  variable t : tableau[1 .. tSup] de entier ; 
 
  variable bSup : 0 .. tSup ; 
 
  variable iMin, iMax : 0 .. tSup ; 
 
 procedure chargerTableau ; 
 
 debut 
 
  ... 
 
 fin ; # ici bSup est défini et le tableau chargé de 1 à bSup 
 
procedure calculEcart ; 
 
variable indice : 1 .. tSup ; 
 
debut 
 
  si bSup > 0 alors 
 
    iMin <- 1 ; 
 
    iMax <- 1 ; 
 
    pour indice de 2 a bSup 
 
      si t[indice] > t[iMax] alors iMax <- indice finSi ; 
 
      si t[indice] < t[iMin] alors iMin <- indice finSi ; 
 
    finPour ; 
 
  finSi 
 
fin ; 
 
debut 
 
  chargerTableau ; 
 
  calculEcart ; 
 
  écrire(abs(t[iMax] - t[iMin])) 
 
fin.
Je vous remercie d'avance si vous savez m'aider.

ps:Je ne peux utiliser que des tantque, des repeter, des conditions, des tableaux, des conditions et des affectations.