问一下大神matlab应该怎么编程?
11个回答
展开全部
不需要用循环,直接使用逻辑数组运算更快。
我假设你的x和x(1)--x(n)是不同的变量,那么我用a来表示你的x,用x数组代表你的x(1)--x(n)
我随便给这些数赋值
a=10;
x=1:3:30;
k=5;
temp = true(size(x));
temp(k) = false;
y = prod(a - x) / prod(x(k) - x(temp));
a-x是生成数组[a-x(1), a-x(2), ..., a-x(n)],prod()是吧这个数组相乘
temp是一个逻辑数组,和x相同大小,并且只有第k个数是false。x(temp)就是生成[x(1), x(2),..., x(k-1), x(k+1), ..., x(n)]
其他的应该容易理解
补充:拉格朗日插值多项式可也这么写:
%x0,y0是已知各点坐标,共n点
x0 = [1, 2, 3];
y0 = [1, 8, 27];
n = length(x0);
%x是要求的点
x = 4;
y = 0;
for k = 1:n
temp = true(size(x0));
temp(k) = false;
y = y + y0(k) * prod(x - x0(temp)) / prod(x0(k) - x0(temp));
end
我假设你的x和x(1)--x(n)是不同的变量,那么我用a来表示你的x,用x数组代表你的x(1)--x(n)
我随便给这些数赋值
a=10;
x=1:3:30;
k=5;
temp = true(size(x));
temp(k) = false;
y = prod(a - x) / prod(x(k) - x(temp));
a-x是生成数组[a-x(1), a-x(2), ..., a-x(n)],prod()是吧这个数组相乘
temp是一个逻辑数组,和x相同大小,并且只有第k个数是false。x(temp)就是生成[x(1), x(2),..., x(k-1), x(k+1), ..., x(n)]
其他的应该容易理解
补充:拉格朗日插值多项式可也这么写:
%x0,y0是已知各点坐标,共n点
x0 = [1, 2, 3];
y0 = [1, 8, 27];
n = length(x0);
%x是要求的点
x = 4;
y = 0;
for k = 1:n
temp = true(size(x0));
temp(k) = false;
y = y + y0(k) * prod(x - x0(temp)) / prod(x0(k) - x0(temp));
end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
matlab 程序的文件代码是以.m文件的形式呈现的。将matlab代码编写进.m文件内然后运行即可。 例子: 建立一个 helloworld.m 文件内包括内容如下: fprintf('Hello World!'); 使用快捷键F5直接运行,然后可以在控制台下看到打印的: Hello World!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
操作方法首先,在我们的桌面上找到matlab软件的图标,将鼠标移到该位置双击点开,这时电脑屏幕会弹出matlab软件的主界面。其次,在这里我们不提倡在中间的那一栏...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
打开电脑进入表格,输入相应的东西,输入相应的步骤,按照步骤轴输出相应的不阁,然后制作而成就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你问下大神怎么编程,其实编程的是专业的,一般人都是不会的,我也是不会的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询