32 lines
1.2 KiB
Plaintext
32 lines
1.2 KiB
Plaintext
include "NSLog.incl"
|
|
|
|
local fn FourIsMagic( number as CFNumberRef ) as CFStringRef
|
|
CFMutableStringRef result = fn MutableStringNew
|
|
NumberFormatterRef formatter = fn NumberFormatterWithStyle( NSNumberFormatterSpellOutStyle )
|
|
NumberFormatterSetLocale( formatter, fn LocaleWithIdentifier( @"en_EN" ) )
|
|
CFStringRef numberString = fn NumberFormatterStringFromNumber( formatter, number )
|
|
MutableStringAppendString( result, fn StringCapitalizedString( numberString ) )
|
|
|
|
while ( fn StringIsEqual( numberString, @"four" ) == NO )
|
|
numberString = fn NumberFormatterStringFromNumber( formatter, fn NumberWithInteger( len(numberString) ) )
|
|
MutableStringAppendString( result, fn StringWithFormat( @" is %@, %@", numberString, numberString ) )
|
|
wend
|
|
MutableStringAppendString( result, @" is magic." )
|
|
end fn = result
|
|
|
|
NSInteger i
|
|
CFNumberRef testInput
|
|
CFArrayRef testNumbers : testNumbers = @[@23, @1000000000, @20140, @100, @130, @151, @-7]
|
|
|
|
NSLog( @"Outputs 0 through 9:\n" )
|
|
for i = 0 to 9
|
|
NSLog( @"%@", fn FourIsMagic( fn NumberWithInteger( i ) ) )
|
|
next
|
|
|
|
NSLog( @"\nOther number tests:\n" )
|
|
for testInput in testNumbers
|
|
NSLog( @"%@", fn FourIsMagic( testInput ) )
|
|
next
|
|
|
|
HandleEvents
|