aboutsummaryrefslogtreecommitdiff
path: root/tests/ii/overload-functions/arrays.cps
blob: 47ff46ca4d7a16ead78d7b67be61b370f1343160 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

OVERLOAD FUNCTION Score(Values : ARRAY OF INTEGER, First : INTEGER, Size : INTEGER) RETURNS INTEGER
    DECLARE I : INTEGER
    DECLARE Total : INTEGER
    Total <- 0
    FOR I <- First TO First + Size - 1
        Total <- Total + Values[I]
    NEXT I
    RETURN Total
ENDFUNCTION
OVERLOAD FUNCTION Score(Values : ARRAY OF REAL, First : INTEGER, Size : INTEGER) RETURNS BOOLEAN
    DECLARE I : INTEGER
    DECLARE Total : REAL
    Total <- 0.0
    FOR I <- First TO First + Size - 1
        Total <- Total + Values[I]
    NEXT I
    RETURN Total > 0.0
ENDFUNCTION
OVERLOAD FUNCTION Score(Values : ARRAY[1:2,1:2] OF INTEGER, First : INTEGER, Size : INTEGER) RETURNS INTEGER
    RETURN Values[1,1] + 2 * Values[1,2] + 3 * Values[2,1] + 4 * Values[2,2]
ENDFUNCTION