MATLAB中symsum的疑问
我在MATLAB中输入>>symsi>>symsum('2^i',i,0,2)得到结果是216并不是2^0+2^1+2^2但如果改为>>symsi>>symsum('2^...
我在MATLAB中输入
>> syms i
>> symsum('2^i',i,0,2)
得到结果是216
并不是2^0+2^1+2^2
但如果改为
>> syms i
>> symsum('2^i+1',i,0,2)
得10
得到的却是2^0+2^1+2^2+3
这到底是为什么呢????希望高手解答
我用的是MATLAB7 展开
>> syms i
>> symsum('2^i',i,0,2)
得到结果是216
并不是2^0+2^1+2^2
但如果改为
>> syms i
>> symsum('2^i+1',i,0,2)
得10
得到的却是2^0+2^1+2^2+3
这到底是为什么呢????希望高手解答
我用的是MATLAB7 展开
展开全部
>> syms i
symsum('2^i',i,0,2)
ans =
216
>> syms k
>> symsum('2^k',k,0,2)
ans =
216
这说明和变量的应用没什么关系,将程序改为
>> syms k
symsum(2^k,k,0,2)
ans =
7,
得到正确答案,说明是你调用涵数时格式错误。
syms i
symsum('2^i+1',i,0,2)
ans =
10
与
>> syms i
symsum(2^i+1,i,0,2)
ans =
10
均可能到正确结果
这主要是因为matlab中应该程序自身的问题,你可以去查一下sym和findsy及maple几个函数,但如果你安matlab自身指定的格式输入的话,基本是不会出错的,其实说回来,每个软件都不会是完美的,要不然它也不会总是出新版本,呵呵!我试过这样算
syms k
symsum('2^k+0',k,0,2)
ans =
216
结果还是不行,这说明它自身在编写的时候,在symsum('2^i',i,0,2)这个式子上是不兼容的,换言之是不能正常运行的,这其中涉及的函数较复杂,方面也比较多。大家都在努力的学习,但到达全盘皆通还都有很长的路要走,大家一起努力吧
symsum('2^i',i,0,2)
ans =
216
>> syms k
>> symsum('2^k',k,0,2)
ans =
216
这说明和变量的应用没什么关系,将程序改为
>> syms k
symsum(2^k,k,0,2)
ans =
7,
得到正确答案,说明是你调用涵数时格式错误。
syms i
symsum('2^i+1',i,0,2)
ans =
10
与
>> syms i
symsum(2^i+1,i,0,2)
ans =
10
均可能到正确结果
这主要是因为matlab中应该程序自身的问题,你可以去查一下sym和findsy及maple几个函数,但如果你安matlab自身指定的格式输入的话,基本是不会出错的,其实说回来,每个软件都不会是完美的,要不然它也不会总是出新版本,呵呵!我试过这样算
syms k
symsum('2^k+0',k,0,2)
ans =
216
结果还是不行,这说明它自身在编写的时候,在symsum('2^i',i,0,2)这个式子上是不兼容的,换言之是不能正常运行的,这其中涉及的函数较复杂,方面也比较多。大家都在努力的学习,但到达全盘皆通还都有很长的路要走,大家一起努力吧
展开全部
我的是matlab 2009a
在输入symsum('2^i',i,0,2)的时候,matlab2009是会报错的。
正确的输入方法是symsum(2^i,i,0,2)注意:是没有引号的。
如此,我得到的答案是7。
而后面symsum('2^i+1',i,0,2)我的matlab仍是报错。但去掉引号是正常的。
你可以参看matlab帮助中的symsum函数,它的例子中,也是没有引号的。
加了引号的是字符串,symsum是符号计算。没有办法计算的。
在输入symsum('2^i',i,0,2)的时候,matlab2009是会报错的。
正确的输入方法是symsum(2^i,i,0,2)注意:是没有引号的。
如此,我得到的答案是7。
而后面symsum('2^i+1',i,0,2)我的matlab仍是报错。但去掉引号是正常的。
你可以参看matlab帮助中的symsum函数,它的例子中,也是没有引号的。
加了引号的是字符串,symsum是符号计算。没有办法计算的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
真的很奇怪,我的也是7.0,也一样。
clc;clear
syms k
t1=symsum('2^k',k,0,2)
t2=symsum(2^k,k,0,2)
结果:
t1 =
216
t2 =
7
>> ver
-------------------------------------------------------------------------------------
MATLAB Version 7.0.0.19920 (R14)
clc;clear
syms k
t1=symsum('2^k',k,0,2)
t2=symsum(2^k,k,0,2)
结果:
t1 =
216
t2 =
7
>> ver
-------------------------------------------------------------------------------------
MATLAB Version 7.0.0.19920 (R14)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
建议不要用i,i本来在matlab中体表的是虚数,易出错。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |