● fixed X ユーティリティー - 関数リファレンス

最大公約数、最小公倍数

    int __stdcall   fixedutil_gcm(PFIXEDVAL px ,PFIXEDVAL py ,PFIXEDVAL pres ,int width ,PFIXEDVAL pworkarea );

    int __stdcall   fixedutil_lcm(PFIXEDVAL px ,PFIXEDVAL py ,PFIXEDVAL pres ,int width ,PFIXEDVAL pworkarea );

引数

引数名意味
px 、py対象の値が格納されている FIXEDVAL領域の先頭アドレス
pres結果を格納する FIXEDVAL領域の先頭アドレス
widthpxpypres の指す FIXEDVAL値の数値幅(バイト単位)
pworkarea関数が使用するワークエリアを指す FIXEDVAL領域の先頭アドレス

ワークエリアに必要なサイズfixedutil_gcm の場合 width × 6 以上のサイズが必要
fixedutil_lcm の場合 width × 8 以上のサイズが必要

戻り値

正常終了した場合は STATUS_NORMAL 、xy にゼロ以下の値を指定した場合は STATUS_ILLEGALFUNCTIONCALL を返します。
fixedutil_lcm はオーバーフローが発生した場合 STATUS_RANGEOVER を返します。

説明

fixedutil_gcm は最大公約数を signed で計算し、fixedutil_lcm は最小公倍数を signed で計算します。xy は 1 以上の値である必要があります。


引数 pxpypres の指す領域は、width が示す数値幅以上のサイズを持っている必要があり、width は 4 の倍数である必要があります。