● 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領域の先頭アドレス |
width | px 、py 、pres の指す FIXEDVAL値の数値幅(バイト単位) |
pworkarea | 関数が使用するワークエリアを指す FIXEDVAL領域の先頭アドレス |
ワークエリアに必要なサイズ | … | fixedutil_gcm の場合 width × 6 以上のサイズが必要 fixedutil_lcm の場合 width × 8 以上のサイズが必要 |
戻り値
正常終了した場合は STATUS_NORMAL 、x 、y にゼロ以下の値を指定した場合は STATUS_ILLEGALFUNCTIONCALL を返します。
fixedutil_lcm はオーバーフローが発生した場合 STATUS_RANGEOVER を返します。
説明
fixedutil_gcm は最大公約数を signed で計算し、fixedutil_lcm は最小公倍数を signed で計算します。x 、y は 1 以上の値である必要があります。
引数 px 、py 、pres の指す領域は、width が示す数値幅以上のサイズを持っている必要があり、width は 4 の倍数である必要があります。