Number names: Difference between revisions

Add APL
(Add BCPL)
(Add APL)
Line 527:
2010: two thousand and ten
</pre>
 
=={{header|APL}}==
{{works with|Dyalog APL}}
<lang apl>spell←{⎕IO←0
small←'' 'one' 'two' 'three' 'four' 'five' 'six' 'seven' 'eight'
small,←'nine' 'ten' 'eleven' 'twelve' 'thirteen' 'fourteen'
small,←'fifteen' 'sixteen' 'seventeen' 'eighteen' 'nineteen'
teens←'twenty' 'thirty' 'forty' 'fifty' 'sixty' 'seventy'
teens,←'eighty' 'ninety'
orders←'m' 'b' 'tr' 'quadr',¨⊂'illion'
orders←(⊂¨,¨10*6+3×⍳∘≢)orders
orders←('hundred' 100)('thousand' 1000),orders
 
⍵=0:'zero'
{ ⍵<0:'minus ',∇-⍵
⍵<20:⍵⊃small
⍵<100:{
ty←((⌊⍵÷10)-2)⊃teens
0=n←10|⍵:ty
ty,'-',n⊃small
}⍵
(⊃⊃∇{
name size←⍺
cur n←⍵
rest←size|n
n≥size:(⊂cur,(⍺⍺⌊n÷size),' ',name,((0≠rest)↑'')),rest
(⊂cur),rest
}/orders,⊂(''⍵)),∇100|⍵
}⍵
}</lang>
{{out}}
<pre> spell 0
zero
spell 12345
twelve thousand three hundred forty-five
spell -6789
minus six thousand seven hundred eighty-nine
spell 2*48
two hundred eighty-one trillion four hundred seventy-four billion nine hundred seventy-six million seven hundred ten thousand six hundred fifty-six</pre>
 
=={{header|AppleScript}}==
2,096

edits