День добрый! Помогите решить следующую задачу.

На входе в блок двадцать переменных Х1....Х20, вводятся вручную оператором.
В блоке создается массив Z[1] и переменные сортируются в порядке возрастания.
На выходе с блока нужно получить номера переменных в соответствии с их положение в массиве (после сортировки).

Пример на основе пяти входных переменных:
Вход блока Внутри блока Выход блока
X1=10 Z[1]=3 A1=4
X2=35 Z[2]=10 A2=1
X3=11 Z[3]=11 A3=3
X4=3 Z[4]=35 A4=2
X5=43 Z[5]=43 A5=5

Вычисление выходных значений А1...А5 можно добиться путем многократных повторений строк кода типа:

IF Z[1]=X1 THEN A1:=1; END_IF;
IF Z[1]=X2 THEN A1:=2; END_IF;
IF Z[1]=X3 THEN A1:=3; END_IF;
IF Z[1]=X4 THEN A1:=4; END_IF;
IF Z[1]=X5 THEN A1:=5; END_IF;

IF Z[2]=X1 THEN A2:=1; END_IF;
IF Z[2]=X2 THEN A2:=2; END_IF;
IF Z[2]=X3 THEN A2:=3; END_IF;
IF Z[2]=X4 THEN A2:=4; END_IF;
IF Z[2]=X5 THEN A2:=5; END_IF;

И т.д. - т.е. получиться 100 строчек кода.

Как можно оптимизировать программу и создать цикл? Тем самым уменьшив программу.

Спасибо.