20 lines
548 B
Text
20 lines
548 B
Text
define('nchk(str)') :(nchk_end)
|
|
nchk convert(str,'real') :s(return)f(freturn)
|
|
nchk_end
|
|
|
|
* # Wrapper for testing
|
|
define('isnum(str)') :(isnum_end)
|
|
isnum isnum = 'F'; isnum = nchk(str) 'T'
|
|
isnum = isnum ': ' str :(return)
|
|
isnum_end
|
|
|
|
* # Test and display
|
|
output = isnum('123')
|
|
output = isnum('123.0')
|
|
output = isnum('123.')
|
|
output = isnum('-123')
|
|
output = isnum('3.14159')
|
|
output = isnum('1.2.3')
|
|
output = isnum('abc')
|
|
output = isnum('A440')
|
|
end
|