aboutsummaryrefslogtreecommitdiff
path: root/challenge-207/deadmarshal/modula-3/ch2/src/Ch2.m3
blob: 62f84618e9901acc410f2160bba2c6d7f1ee6e01 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
MODULE Ch2 EXPORTS Main;

IMPORT IO;

VAR
  A1:ARRAY[0..4] OF INTEGER := ARRAY OF INTEGER{10,8,5,4,3};
  A2:ARRAY[0..4] OF INTEGER := ARRAY OF INTEGER{25,8,5,3,3};
  
PROCEDURE HIndex(VAR A:ARRAY OF INTEGER):INTEGER =
  BEGIN
    FOR I := FIRST(A) TO LAST(A) DO
      IF I >= A[I] THEN RETURN I END
    END;
  END HIndex;
  
BEGIN
  IO.PutInt(HIndex(A1)); IO.Put("\n");
  IO.PutInt(HIndex(A2)); IO.Put("\n");
END Ch2.