23 lines
434 B
Plaintext
23 lines
434 B
Plaintext
MODULE MapRange;
|
|
|
|
FROM STextIO IMPORT WriteLn, WriteString;
|
|
FROM SWholeIO IMPORT WriteInt;
|
|
FROM SRealIO IMPORT WriteFixed;
|
|
|
|
VAR
|
|
I: INTEGER;
|
|
|
|
PROCEDURE MapRange(S, A1, A2, B1, B2: REAL): REAL;
|
|
BEGIN
|
|
RETURN B1 + (S - A1) * (B2 - B1) / (A2 - A1)
|
|
END MapRange;
|
|
|
|
BEGIN
|
|
FOR I := 0 TO 10 DO
|
|
WriteInt(I, 2);
|
|
WriteString(" maps to ");
|
|
WriteFixed(MapRange(FLOAT(I), 0., 10., -1., 0.), 1, 4);
|
|
WriteLn;
|
|
END;
|
|
END MapRange.
|