
float zero=0.0, mzero=-0.0, inf=1/0, minf=-1/0, nan=0/0

float f

'f=0.0  'zero
'f=-0.0 'minus zero
'f=1/0  'infinity
'f=-1/0 'minus infinity
'f=0/0  'not a number
'f=.19999999999999999 'range boundary test
 f=.20
'f=.2125
'
'THESE CASES USE DWORD (SYS) MATCHING INSTEAD OF FLOAT EVALUATION
select ?f
case ?zero  : print "zero"
case ?mzero : print "minus zero"
case ?inf   : print "infinity"
case ?minf  : print "minus infinity"
case ?nan   : print "nan (not a number)"
case else
  'CASES USING NORMAL FLOAT EVALUATION
  select f
  case 0.0 to < 0.1 : print "0.0 to < 0.1 :   " str f,2
  case 0.1 to < 0.2 : print "0.1 to < 0.2 :   " str f,2
  case 0.2 to < 0.3 : print "0.2 to < 0.3 :   " str f,2
  end select
end select

