Next: , Previous: , Up: Integer Functions   [Index]


5.8 べき乗根関数

Function: int mpz_root (mpz_t rop, const mpz_t op, unsigned long int n)

即ち,opn乗根を求めて整数部のみ取り出し,ropに格納します。計算に丸めが発生しなければ,つまり, opがピッタリopn乗根であればそのままropに格納します。

Function: void mpz_rootrem (mpz_t root, mpz_t rem, const mpz_t u, unsigned long int n)

即ち,un乗根を求めて整数部のみ取り出し,rootに格納します。remには剰余,即ち,u-root**nが格納されます。

Function: void mpz_sqrt (mpz_t rop, const mpz_t op)

即ち,opの平方根の整数部のみ取り出してropに格納します。

Function: void mpz_sqrtrem (mpz_t rop1, mpz_t rop2, const mpz_t op)

即ち, mpz_sqrt関数同様,opの平方根を求め,その整数部をrop1に格納します。rop2には剰余,即ち,op-rop1*rop1が格納されます。もしopがピッタリ平方根であれば,この値はゼロになります。

rop1rop2が同じ変数の時は結果は不定になります。

Function: int mpz_perfect_power_p (const mpz_t op)

opがべき乗数,即ち,b>1を満足する整数abが存在してop equals a raised to the power bとなっていれば,非ゼロを返します。

0も1も完全なべき乗数とみなします。opは負数でもよく,この場合は奇数べき乗かどうかを確認するだけとなります。

Function: int mpz_perfect_square_p (const mpz_t op)

opが完全な平方数,即ち,opの平方根が整数である場合は非ゼロを返します。0と1は完全な平方数とみなします。