$ include "seed7_05.s7i"; const type: matrix is array array integer; const func matrix: identity (in integer: size) is func result var matrix: identity is matrix.value; local var integer: index is 0; begin identity := size times size times 0; for index range 1 to size do identity[index][index] := 1; end for; end func; const proc: writeMat (in matrix: a) is func local var integer: i is 0; var integer: num is 0; begin for key i range a do for num range a[i] do write(num lpad 2); end for; writeln; end for; end func; const proc: main is func begin writeMat(identity(6)); end func;