× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Charles,
Thanks for the example.  I will try it this morning. Regards, Stephen M. Mooney

From: Charles Wilt <charles.wilt@xxxxxxxxx>
To: Bare Metal Programming IBM i (AS/400 and iSeries) <c400-l@xxxxxxxxxxxx>
Sent: Wednesday, February 17, 2016 11:43 AM
Subject: Re: [C400-L] Call a C program from RPG with variables & a return

As Buck points out, RPG supports double.

As does SQL.  Just use CAST or the DOUBLE() function.

set :$Geo03 = double(:Tot03) ** double(1/:$Root03)

You'd probably be best served by declaring $Tot12 as double in the first
place.  Possibly $AvgH(x) should be declared as double too.

Otherwise, you might have to cast to double for each term...which would be
ugly.

Charles


On Wed, Feb 17, 2016 at 12:10 PM, Buck Calabro <kc2hiz@xxxxxxxxx> wrote:

On 2/17/2016 11:29 AM, Stephen Mooney wrote:
Charles,
Thank you for your suggestion.  I was using the SQL set function after
calculating the total for three months:
$Tot03 = ($AvgH(1) * $AvgH(2)  * $AvgH(3))

SET :$Geo03  =  :$Tot03 ** (1/:$Root03);

And that works fine.  When I try it with 12 month's, the result field is
not large enough (set to 63P) and the program errs.  Same happens with:
$Tot12 = ($AvgH(1) * $AvgH(2)  * $AvgH(3) *
$AvgH(4) * $AvgH(5)  * $AvgH(6) *                      $AvgH(7) * $AvgH(8)
* $AvgH(9) *                      $AvgH(10) * $AvgH(11)  * $AvgH(12))
              ** (1/12);
I think I need to use 'C' because if I declare the result field as
"double" I do not have the restriction I do in RPG.
        Regards, Stephen M. Mooney

RPG supports double as dcl-s bigNumber float(8);

--
  --buck

Visit wiki.midrange.com and register for an account. Edit a page that
helps you, and because it's public, you'll help someone else, too!

--
This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L)
mailing list
To post a message email: C400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/c400-l
or email: C400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/c400-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.