36 lines
762 B
Plaintext
36 lines
762 B
Plaintext
PROGRAM "nth"
|
|
VERSION "0.0002"
|
|
|
|
DECLARE FUNCTION Entry()
|
|
INTERNAL FUNCTION Suffix$(n&&)
|
|
INTERNAL FUNCTION PrintImages (loLim&&, hiLim&&)
|
|
|
|
FUNCTION Entry()
|
|
PrintImages( 0, 25)
|
|
PrintImages( 250, 265)
|
|
PrintImages(1000, 1025)
|
|
END FUNCTION
|
|
|
|
FUNCTION Suffix$(n&&)
|
|
nMod10@@ = n&& MOD 10
|
|
nMod100@@ = n&& MOD 100
|
|
SELECT CASE TRUE
|
|
CASE (nMod10@@ = 1) AND (nMod100@@ <> 11):
|
|
RETURN ("st")
|
|
CASE (nMod10@@ = 2) AND (nMod100@@ <> 12):
|
|
RETURN ("nd")
|
|
CASE (nMod10@@ = 3) AND (nMod100@@ <> 13):
|
|
RETURN ("rd")
|
|
CASE ELSE:
|
|
RETURN ("th")
|
|
END SELECT
|
|
END FUNCTION
|
|
|
|
FUNCTION PrintImages(loLim&&, hiLim&&)
|
|
FOR i&& = loLim&& TO hiLim&&
|
|
PRINT TRIM$(STRING$(i&&)); Suffix$(i&&); " ";
|
|
NEXT
|
|
PRINT
|
|
END FUNCTION
|
|
END PROGRAM
|