我有以下系列
我尝试了这段代码,但它没有打印最终结果......而是提供了一长串数字!
syms n
y = symsum(1/sqrt(n),[1,100])
Run Code Online (Sandbox Code Playgroud)
结果:
y =
2^(1/2)/2 + 3^(1/2)/3 + 5^(1/2)/5 + 6^(1/2)/6 + % and so on....
Run Code Online (Sandbox Code Playgroud)
所以问题是如何产生最终数字作为答案?!
我应该使用这样的脚本吗?
y = 0;
for i = 1:1:100
y = y + (1/sqrt(i));
end
disp(y);
Run Code Online (Sandbox Code Playgroud)
要回答原始问题,您可以将最初使用double的符号表达式转换为从符号转换为数值:
y = double(y)
Run Code Online (Sandbox Code Playgroud)
或者实际上:
syms n
y = double(symsum(1/sqrt(n),[1,100]))
Run Code Online (Sandbox Code Playgroud)
你得到18.5896.
此外,您可以使用eval来评估符号表达式(感谢Luis Mendo).
好极了!