Small valued numbers or scientific computing

Mike Bonner bonnmike at gmail.com
Sun Jun 23 22:48:42 EDT 2013


Hmm. was just messing with it in the message box.. I'm not a math guy, but
seems that when using format you shouldn't need to specify the numberformat.

I did this..  put format("%1.60e",1.23456e-41 * 1e-20)  where 60 is the
desired precision.  Seems to work, same type of result but you specify the
precision in the format string rather than having to type 60 # (or however
many you need)...

Just changed it based on your most recent mail that popped in.  Used: put
format("%1.60e",1234567890123e-10 * 1e-170)
message box shows  (precision 60)
1.234567890123000166120503829534102198735876903021159008931759e-168

(of course just popping it into the message box but still)



On Sun, Jun 23, 2013 at 8:42 PM, John <john at onechip.com> wrote:

> Mike,
>
>    Thanks for the tip.  I am using "format" for display purposes so that I
> get correctly formatted numbers but, unless I use "numberFormat" first,
> there is not enough precision available from the result of the
> multiplication and the result is 0.
>
>    It appears that "numberFormat" sets the number of decimal places LC
> uses to do the math and "Format" formats the results for display.
>
>    Any other thoughts?
>
> Thanks,
> John
>
>
>
>
> On Jun 23, 2013, at 7:31 PM, Mike Bonner <bonnmike at gmail.com> wrote:
>
> > look at the format function, specifically the "%#.##E" (or e)
> incantation.
> >
> >
> > On Sun, Jun 23, 2013 at 8:20 PM, John <john at onechip.com> wrote:
> >
> >>   It seems odd that I haven't stumbled into this before and I am sure I
> >> am doing something wrong, I just can't seem to find a better way around
> the
> >> issue of working with small numbers.
> >>
> >>   Suppose I want to multiply two small numbers such as: 1.23456e-41 *
> >> 1e-20.  Unless I am happy with a result of 0, I have to use a really odd
> >> numberFormat statement such as:
> >>
> >>  set the numberformat to "0.##########...############" where " …"
> >> represents sixty or so '#'
> >>
> >> This seems really odd.  Surely there is a better way to do this.  Can
> >> someone help?
> >>
> >> Thanks,
> >> John
> >>
> >>
> >>
> >> _______________________________________________
> >> use-livecode mailing list
> >> use-livecode at lists.runrev.com
> >> Please visit this url to subscribe, unsubscribe and manage your
> >> subscription preferences:
> >> http://lists.runrev.com/mailman/listinfo/use-livecode
> >>
> > _______________________________________________
> > use-livecode mailing list
> > use-livecode at lists.runrev.com
> > Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> > http://lists.runrev.com/mailman/listinfo/use-livecode
>
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>



More information about the use-livecode mailing list