matlab中M文件for循环求解

题目意思是求y(i)=(x(i+1)-x(i))/x(i)中的每个yfunctiony(i)=rk(x)x=[3.95.37.29.612.917.113.231.438... 题目意思是求 y(i)=(x(i+1)-x(i))/x(i)中的每个y
function y(i)=rk(x)
x=[3.9 5.3 7.2 9.6 12.9 17.1 13.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.5 226.5 251.4]
for i=1:21
y(i)=(x(i+1)-x(i))/x(i);
end
y
运行结果出现这个 该怎么改
??? Undefined function or variable 'x'.
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
刘贺great
2013-05-27 · TA获得超过1.6万个赞
知道大有可为答主
回答量:3829
采纳率:100%
帮助的人:1868万
展开全部
函数:
function y=digui(x)
n=length(x);
for ii=1:n-1
y(ii)=(x(ii+1)-x(ii))/x(ii);
end
主程序:
clear all;clc;
x=[3.9 5.3 7.2 9.6 12.9 17.1 13.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3];
y=digui(x)
追问
步奏后面 能 加个说明吗?
n=length(x);这个是什么意思
追答
一般情况下,定义函数时,没有必要赋值,当然有时也需要:
function y=digui(x)
% 定义函数digui.m
n=length(x); % 向量x的长度为n
for ii=1:n-1 %循环
y(ii)=(x(ii+1)-x(ii))/x(ii);
% 迭代求y
end

主程序:
clear all;clc;
x=[3.9 5.3 7.2 9.6 12.9 17.1 13.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3];
% 定义变量x
y=digui(x)
% 调用函数
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式