"CODE" 36403; "PROCEDURE" ROWPERM(PERM,LOW,UPP,I,MAT);"VALUE" LOW,UPP,I; "INTEGER" LOW,UPP,I;"INTEGER" "ARRAY" PERM;"REAL" "ARRAY" MAT; "BEGIN" "INTEGER" T,J,K;"REAL" A;"BOOLEAN" "ARRAY" TODO[LOW:UPP]; "FOR" T:=LOW "STEP" 1 "UNTIL" UPP "DO" TODO[T]:="TRUE"; "FOR" T:=LOW "STEP" 1 "UNTIL" UPP "DO" "BEGIN" "IF" TODO[T] "THEN" "BEGIN" K:=T;A:=MAT[I,K]; "FOR" J:=PERM[K] "WHILE" J^=T "DO" "BEGIN" MAT[I,K]:=MAT[I,J];TODO[K]:="FALSE";K:=J "END";MAT[I,K]:=A;TODO[K]:="FALSE" "END" CYCLE; "END" FOR T; "END" ROWPERM; "EOP"