RosettaCodeData/Task/Nth/True-BASIC/nth.basic

36 lines
752 B
Plaintext

SUB sufijo (n)
LET n = INT(n)
LET NMod10 = MOD(n, 10)
LET NMod100 = MOD(n, 100)
IF (NMod10 = 1) AND (NMod100 <> 11) THEN
LET sufi$ = "st"
ELSE
IF (NMod10 = 2) AND (NMod100 <> 12) THEN
LET sufi$ = "nd"
ELSE
IF (NMod10 = 3) AND (NMod100 <> 13) THEN
LET sufi$ = "rd"
ELSE
LET sufi$ = "th"
END IF
END IF
END IF
PRINT sufi$;
END SUB
SUB imprimeOrdinal (loLim, hiLim)
LET loLim = INT(loLim)
LET hiLim = INT(hiLim)
FOR i = loLim TO hiLim
PRINT i;
CALL sufijo (i)
PRINT " ";
NEXT i
PRINT
END SUB
CALL imprimeOrdinal (0, 25)
CALL imprimeOrdinal (250, 265)
CALL imprimeOrdinal (1000, 1025)
END