t_array.mod 617 B

1234567891011121314151617181920212223
  1. MODULE TArray;
  2. // 1-D + nested arrays, whole assign (incl. nested copy), strings,
  3. // char compare. Exit 108.
  4. TYPE Vec = ARRAY [0..4] OF INTEGER;
  5. TYPE Mat = ARRAY [0..1, 0..2] OF INTEGER;
  6. VAR ExitCode : INTEGER;
  7. VAR v, w : Vec;
  8. VAR m, m2 : Mat;
  9. VAR s : ARRAY [0..2] OF CHAR;
  10. VAR i, sum : INTEGER;
  11. BEGIN
  12. sum := 0;
  13. FOR i := 0 TO 4 DO v[i] := i * 10; sum := sum + v[i] END;
  14. w := v;
  15. m[0, 0] := 1; m[0, 1] := 2; m[0, 2] := 3;
  16. m[1, 0] := 4; m[1, 1] := 5; m[1, 2] := 6;
  17. sum := sum + m[1, 2];
  18. m2 := m;
  19. sum := sum + m2[0, 0];
  20. s := "abc";
  21. IF s[0] = 'a' THEN sum := sum + 1 END;
  22. ExitCode := sum
  23. END TArray.