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