请大神帮忙看看这段MATLAB的m文件代码哪里不对,急等答案function a=benjin(x)syms x n ya=1000:1000:60000;n=zeros(1,60);y=x*2-2*a*0.01;n=log(x*2/y)/log(1+0.005);plot(a,n)初学者.怎么改都编译不过.纠结啊.
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/08 17:26:24
![请大神帮忙看看这段MATLAB的m文件代码哪里不对,急等答案function a=benjin(x)syms x n ya=1000:1000:60000;n=zeros(1,60);y=x*2-2*a*0.01;n=log(x*2/y)/log(1+0.005);plot(a,n)初学者.怎么改都编译不过.纠结啊.](/uploads/image/z/6835472-8-2.jpg?t=%E8%AF%B7%E5%A4%A7%E7%A5%9E%E5%B8%AE%E5%BF%99%E7%9C%8B%E7%9C%8B%E8%BF%99%E6%AE%B5MATLAB%E7%9A%84m%E6%96%87%E4%BB%B6%E4%BB%A3%E7%A0%81%E5%93%AA%E9%87%8C%E4%B8%8D%E5%AF%B9%2C%E6%80%A5%E7%AD%89%E7%AD%94%E6%A1%88function+a%3Dbenjin%28x%29syms+++x+n+ya%3D1000%3A1000%3A60000%3Bn%3Dzeros%281%2C60%29%3By%3Dx%2A2-2%2Aa%2A0.01%3Bn%3Dlog%28x%2A2%2Fy%29%2Flog%281%2B0.005%29%3Bplot%28a%2Cn%29%E5%88%9D%E5%AD%A6%E8%80%85.%E6%80%8E%E4%B9%88%E6%94%B9%E9%83%BD%E7%BC%96%E8%AF%91%E4%B8%8D%E8%BF%87.%E7%BA%A0%E7%BB%93%E5%95%8A.)
请大神帮忙看看这段MATLAB的m文件代码哪里不对,急等答案function a=benjin(x)syms x n ya=1000:1000:60000;n=zeros(1,60);y=x*2-2*a*0.01;n=log(x*2/y)/log(1+0.005);plot(a,n)初学者.怎么改都编译不过.纠结啊.
请大神帮忙看看这段MATLAB的m文件代码哪里不对,急等答案
function a=benjin(x)
syms x n y
a=1000:1000:60000;
n=zeros(1,60);
y=x*2-2*a*0.01;
n=log(x*2/y)/log(1+0.005);
plot(a,n)
初学者.怎么改都编译不过.纠结啊.
请大神帮忙看看这段MATLAB的m文件代码哪里不对,急等答案function a=benjin(x)syms x n ya=1000:1000:60000;n=zeros(1,60);y=x*2-2*a*0.01;n=log(x*2/y)/log(1+0.005);plot(a,n)初学者.怎么改都编译不过.纠结啊.
改成下面的就可以了:用点除(矩阵维数得匹配,但光改n=log(.)那行话,是不够的.此外x得定义,要不会出现Conversion to double from sym is not possible.这个错误,原因是syms与double之间不匹配)
syms n y
a=1000:1000:60000;
x=1000
n=zeros(1,60);
y=x*2-2*a*0.01;
n=log(x*2./y)/log(1+0.005);
plot(a,n)
我知道你的意思,是想输入一个x然后画出图.
但那样的话,就会出现我上面说的Conversion to double from sym is not possible.错误.
x是syms型,后面的数据y,n都是syms,而a却是double型的.
你可以试试哦,不定义x话,是不是出现这个错误
这样是无法作图的.
只有定义x才可以匹配.
你可以不把它写成函数,就需要x多少的时候,直接定义就好啦.