MODULE sort; (* Odd-Even Transposition Sorting *) CONST n = 10; CONFIGURATION list [1..n]; CONNECTION left: list[i] <-> list[i-1] :right; VAR step : INTEGER; a : ARRAY[1..n] OF INTEGER; val,comp: list OF INTEGER; lhs : list OF BOOLEAN; BEGIN WriteString('Enter '); WriteInt(n,1); WriteString(' values: '); ReadInt(val); lhs := ODD(ID(list)); (* PE is left-hand-side of a comparison *) FOR step:=1 TO n DO IF lhs THEN comp := RECEIVE.left (val) ELSE comp := RECEIVE.right(val) END; IF lhs = (comp=val) *) WriteInt(val,5); END sort.