Делители целого числа или выражения
Найдите все неотрицательные делители этих целых чисел.
Найдите делители целых чисел. Можно использовать числа двойной точности или числа, преобразованные в символические объекты. Если вы звоните 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]
Теперь предположим, что это выражение содержит только одну переменную (для примера, 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]
.