Write a function/method/subroutine/... that when given an integer greater than or equal to zero returns a string of the number followed by an apostrophe then the ordinal suffix.



Example

Returns would include 1'st 2'nd 3'rd 11'th 111'th 1001'st 1012'th



Task

Use your routine to show here the output for at least the following (inclusive) ranges of integer inputs:
0..25, 250..265, 1000..1025


Note: apostrophes are now optional to allow correct apostrophe-less English.




 
{def fnOrdinalForm
 {lambda {:n}
  {if {and {<= 11 {% :n 100}} {>= 13 {% :n 100}}}
   then :nth
   else :n{A.get {% :n 10} th st nd rd th th th th th th}}}}
-> fnOrdinalForm
 
{S.map fnOrdinalForm {S.serie 0 25}} 
-> 0th 1st 2nd 3rd 4th 5th 6th 7th 8th 9th 10th 11th 12th 13th 14th 15th
 16th 17th 18th 19th 20th 21st 22nd 23rd 24th 25th 
 
{S.map fnOrdinalForm {S.serie 250 265}} 
-> 250th 251st 252nd 253rd 254th 255th 256th 257th 258th 259th 260th 
261st 262nd 263rd 264th 265th 
 
{S.map fnOrdinalForm {S.serie 1000 1025}} 
-> 1000th 1001st 1002nd 1003rd 1004th 1005th 1006th 1007th 1008th 1009th 1010th 
1011th 1012th 1013th 1014th 1015th 1016th 1017th 1018th 1019th 1020th 
1021st 1022nd 1023rd 1024th 1025th
 