I suspect that this is because you are running a very old ksh93. Here is what I get on ubuntu linux x86_63.13.0-30-generic4 release .
$ print $(( log(2.171828) )) 0.775569209249095711 $ print $(( log(2000000.0) / log(2.171828) )) 18.7071090052317417 $ print $(( log(2000000.0) / log(2) )) 20.9315685693241741 $ print $(( log(2000000.0) / log(3) )) 13.2063493993077651 $ typeset -F a=2000000 $ typeset -F b=2.71828 $ print $(( log(a) / log(b) )) 14.5086674978188462 $ print $a $b 2000000.0000000000000 2.7182800000000 $ typeset -F b=3.0 $ print $(( log(a) / log(b) )) 13.2063493993077651 $ printf "%f\n" $(( log(a) / log(b) )) 13.206349 $ typeset -F b=3.1 $ printf "%f\n" $(( log(a) / log(b) )) 12.823609 $ ksh --version version sh (AT&T Research) 93v- 2014-06-06 On Wed, Jun 25, 2014 at 3:59 PM, Janis Papanagnou < janis_papanag...@hotmail.com> wrote: > I've just noticed something strange with real number arithmetic in ksh. > The problem: > It seems that the fractional part in a division is interpreted as integer. > > $ print $(( log(2.171828) )) > 0.775569209249095711 > > $ print $(( log(2000000.0) / log(2.171828) )) > ksh: log(2000000.0) / log(2.171828) : divide by zero > > $ print $(( log(2000000.0) / log(2) )) > ksh: log(2000000.0) / log(2) : divide by zero > > $ print $(( log(2000000.0) / log(3) )) > 14 > > $ typeset -F a=2000000 > $ typeset -F b=2.71828 > $ print $(( log(a) / log(b) )) > ksh: log(a) / log(b) : divide by zero > > $ print $a $b > 2000000.0000000000 2.7182800000 > > > $ typeset -F b=3.0 > $ print $(( log(a) / log(b) )) > 14 > > $ printf "%f\n" $(( log(a) / log(b) )) > 14.000000 > > $ typeset -F b=3.1 > $ printf "%f\n" $(( log(a) / log(b) )) > 14.000000 > > > $ ksh --version > version sh (AT&T Research) 93t+ 2010-03-05 > > All done in the LC_ALL=C locale. On a Linux 2.6 platform. > > > Am I doing something wrong or is this some shell issue? > > Thanks! > > > _______________________________________________ > ast-users mailing list > ast-users@lists.research.att.com > http://lists.research.att.com/mailman/listinfo/ast-users > >
_______________________________________________ ast-users mailing list ast-users@lists.research.att.com http://lists.research.att.com/mailman/listinfo/ast-users