MODULE ResistorMesh; FROM RConversions IMPORT RealToStringFixed; FROM Terminal IMPORT WriteString,WriteLn,ReadChar; CONST S = 10; TYPE Node = RECORD v : LONGREAL; fixed : INTEGER; END; PROCEDURE SetBoundary(VAR m : ARRAY OF ARRAY OF Node); BEGIN m[1][1].v := 1.0; m[1][1].fixed := 1; m[6][7].v := -1.0; m[6][7].fixed := -1; END SetBoundary; PROCEDURE CalcDiff(VAR m,d : ARRAY OF ARRAY OF Node) : LONGREAL; VAR total,v : LONGREAL; i,j,n : INTEGER; BEGIN total := 0.0; FOR i:=0 TO S DO FOR j:=0 TO S DO v := 0.0; n := 0; IF i>0 THEN v := v + m[i-1][j].v; INC(n); END; IF j>0 THEN v := v + m[i][j-1].v; INC(n); END; IF i+11.0E-24 DO SetBoundary(m); diff := CalcDiff(m,d); FOR i:=0 TO S DO FOR j:=0 TO S DO m[i][j].v := m[i][j].v - d[i][j].v; END; END; END; FOR i:=0 TO S DO FOR j:=0 TO S DO k:=0; IF i#0 THEN INC(k) END; IF j#0 THEN INC(k) END; IF i