Создайте символьные векторы, индексирование массивов и for
- итераторы цикла
Используйте оператор двоеточия, чтобы создать числовой и символьные массивы. Поскольку эти входные параметры не являются символьными объектами, вы получаете результаты с плавающей точкой.
1/2:7/2
ans = 0.5000 1.5000 2.5000 3.5000
Чтобы получить символьные результаты, преобразуйте входные параметры в символьные объекты.
sym(1/2):sym(7/2)
ans = [ 1/2, 3/2, 5/2, 7/2]
Задайте используемый шаг.
sym(1/2):2/3:sym(7/2)
ans = [ 1/2, 7/6, 11/6, 5/2, 19/6]
syms x x:x+2
ans = [ x, x + 1, x + 2]
Задайте используемый шаг.
syms x x:3/7:x+2
ans = [ x, x + 3/7, x + 6/7, x + 9/7, x + 12/7]
Получите шаг между x
и 2*x
в интервалах x/3
.
syms x x:x/3:2*x
ans = [ x, (4*x)/3, (5*x)/3, 2*x]
Найдите продукт первых четырех сроков гармонического ряда.
syms x p = sym(1); for i = x:x+3 p = p*1/i; end p
p = 1/(x*(x + 1)*(x + 2)*(x + 3))
Используйте expand
получить полный полином.
expand(p)
ans = 1/(x^4 + 6*x^3 + 11*x^2 + 6*x)
Используйте subs
заменять x
с 1
и найдите продукт в частях.
p = subs(p,x,1)
p = 1/24
Используйте vpa
возвратить результат как значение с плавающей точкой.
vpa(p)
ans = 0.041666666666666666666666666666667
Можно также выполнить описанные операции в одной строке кода.
vpa(subs( expand(prod(1./(x:x+3))) ,x,1))
ans = 0.041666666666666666666666666666667