SH if statement using FLOAT values

Today I spent longer than I'd like to admit figuring out how to write a Bourne shell IF statement that tests a FLOAT value before executing a block of statements. Here's the solution I found, which invokes bc. Hope this will come in handy for someone:

value = [some floating point number]
testval = [some floating point number]

if [ `echo "if($value > $testval) 1; if($value <= $testval) 0" | bc` -eq 1 ]
then
body of if statement
fi

--Steve

#!/bin/ksh

a=1.72
b=1.71

if [ "$(echo "if (${a} > ${b}) 1" | bc)" -eq 1 ] ; then
   echo ">"
else
   echo "<"
fi;

I would have thought that all version of ksh support floating point calculation/comparison.

Mine does:

a=1.699999
b=1.7
if [[ $a < $b ]];then echo $a smaller than $b;fi

ksh version M 1993-12-28 s+

don't know about k93, but k88 does not.
The OP is actually asking about Bourne - the above should work Bourne as well.

Not my Bourne, however work on Bash.

OK, this version should work under Bourne - sorry 'bout that:

#!/bin/sh

a=1.72
b=1.71

if [ "`echo \"if (${a} > ${b}) 1\" | bc`" -eq 1 ] ; then
   echo ">"
else
   echo "<"
fi;