Spelling of ordinal numbers: Difference between revisions
Content added Content deleted
Thundergnat (talk | contribs) m (→{{header|FutureBasic}}: incorrect) |
No edit summary |
||
Line 508: | Line 508: | ||
</pre> |
</pre> |
||
=={{header|FutureBasic}}== |
|||
{{incorrect|Futurebasic|Task is specifically about spelling ''ordinal'' numbers not ''cardinal'' numbers.}} |
|||
FB has native convenience functions making conversion of numbers to strings for many locales and languages an easy task. |
|||
<syntaxhighlight lang="FutureBasic"> |
|||
include "NSLog.incl" |
|||
local fn IntegerToOrdinalString( number as CFNumberRef ) as CFStringRef |
|||
NumberFormatterRef numberFormatter = fn NumberFormatterInit |
|||
NumberFormatterSetNumberStyle( numberFormatter, NSNumberFormatterSpellOutStyle ) |
|||
NumberFormatterSetLocale( numberFormatter, fn LocaleWithIdentifier( @"en_US" ) ) |
|||
CFStringRef numberStr = fn NumberFormatterStringFromNumber( numberFormatter, number ) |
|||
end fn = numberStr |
|||
CFArrayRef numArr |
|||
CFStringRef numStr |
|||
CFNumberRef number |
|||
numStr = @" 1 2 3 4 5 11 65 100 101 272 23456 8007006005004003 00123.0" |
|||
numArr = fn StringComponentsSeparatedByString( numStr, @" " ) |
|||
for numStr in numArr |
|||
number = fn NumberWithInteger( fn StringIntegerValue( numStr ) ) |
|||
NSLog( @"%16ld : %@", fn StringIntegerValue( numStr ), fn IntegerToOrdinalString( number ) ) |
|||
next |
|||
HandleEvents |
|||
</syntaxhighlight> |
|||
{{output}} |
|||
<pre> |
|||
0 : zero |
|||
1 : one |
|||
2 : two |
|||
3 : three |
|||
4 : four |
|||
5 : five |
|||
11 : eleven |
|||
65 : sixty-five |
|||
100 : one hundred |
|||
101 : one hundred one |
|||
272 : two hundred seventy-two |
|||
23456 : twenty-three thousand four hundred fifty-six |
|||
8007006005004003 : eight quadrillion seven trillion six billion five million four thousand three |
|||
123 : one hundred twenty-three |
|||
</pre> |
|||
=={{header|Go}}== |
=={{header|Go}}== |