Revision c969dc43-7488-423d-ad09-c1e2ab6c5d33 - Code Golf Stack Exchange

###Scala 89

 def x(n:Int)=n+{if(n%100/10==1)"th"else("thstndrdthththththth".sliding(2,2).toSeq(n%10))}

Scala 102:

 def x(n:Int)=if((n%100)/10==1)n+"th"else if(n%10<4)n+("thstndrd".take(n+1)%5*2.drop(n%5*2))else n+"th"

102 as well:

 def x(n:Int)=if((n%100)/10==1)n+"th"else if(n%10<4)n+("thstndrd".sliding(2,2).toSeq(n%10))else n+"th"

ungolfed:

 def x (n:Int) = 
 if ((n % 100) / 10 == 1) n+"th" 
 else if (n % 10 < 4) n + ("thstndrd".take (n + 1) % 5 * 2.drop (n % 5 * 2)) 
 else n + "th"

AltStyle によって変換されたページ (->オリジナル) /