divisors
整数または式の約数
説明
例
整数の約数
整数のすべての非負の約数を求めます。
整数の約数を求めます。倍精度の数値またはシンボリック オブジェクトに変換された数値を使用できます。倍精度の数値に対して divisors
を呼び出すと、倍精度の数値のベクトルを返します。
divisors(42)
ans = 1 2 3 6 7 14 21 42
負の整数の約数を求めます。divisors
は負の整数に対して非負の約数を返します。
divisors(-42)
ans = 1 2 3 6 7 14 21 42
シンボリック数に対して divisors
を呼び出すと、シンボリック ベクトルを返します。
divisors(sym(42))
ans = [ 1, 2, 3, 6, 7, 14, 21, 42]
0
の唯一の約数は 0
です。
divisors(0)
ans = 0
一変数多項式の約数
一変数多項式の約数を求めます。
次の一変数多項式の約数を求めます。多項式をシンボリック式として指定することができます。
syms x divisors(x^4 - 1, x)
ans = [ 1, x - 1, x + 1, (x - 1)*(x + 1), x^2 + 1, (x^2 + 1)*(x - 1),... (x^2 + 1)*(x + 1), (x^2 + 1)*(x - 1)*(x + 1)]
また、シンボリック関数を使用して多項式を指定することもできます。
syms f(t) f(t) = t^5; divisors(f,t)
ans(t) = [ 1, t, t^2, t^3, t^4, t^5]
多項式の約数を求める際、divisors
は定数係数の約数は返しません。
f(t) = 9*t^5; divisors(f,t)
ans(t) = [ 1, t, t^2, t^3, t^4, t^5]
多変数多項式の約数
多変数多項式の約数を求めます。
多変数多項式の約数を求めます。u
と v
が変数、a
がシンボリック パラメーターであるとします。変数をシンボリック ベクトルとして指定します。
syms a u v divisors(a*u^2*v^3, [u,v])
ans = [ 1, u, u^2, v, u*v, u^2*v, v^2, u*v^2, u^2*v^2, v^3, u*v^3, u^2*v^3]
ここで、この式には 1 つの変数 (たとえば v
) のみが含まれており、a
と u
はシンボリック パラメーターであるとします。ここで、divisors
は式 a*u^2
を定数として扱い、これを無視して v^3
の約数のみを返します。
divisors(a*u^2*v^3, v)
ans = [ 1, v, v^2, v^3]
入力引数
ヒント
divisors(0)
は0
を返します。多項式の約数を求める際、
divisors(expr,vars)
は定数係数の約数は返しません。多項式変数を指定しない場合、
divisors
は定数シンボリック式の約数を含む、見つかる限りの約数を返します。たとえば、divisors(sym(pi)^2*x^2)
は[ 1, pi, pi^2, x, pi*x, pi^2*x, x^2, pi*x^2, pi^2*x^2]
を返し、divisors(sym(pi)^2*x^2, x)
で[ 1, x, x^2]
を返します。有理数に対しては、
divisors
は分子のすべての約数を分母のすべての約数で除算したものを返します。たとえば、divisors(sym(9/8))
は[ 1, 3, 9, 1/2, 3/2, 9/2, 1/4, 3/4, 9/4, 1/8, 3/8, 9/8]
を返します。
バージョン履歴
R2014b で導入