matlab迭代法计算出现问题

本人matlab菜鸟,按照书上做迭代法及其MATLAB程序,但运行不出结果,显示如下。附上代码,请大家帮我看看,有些地方还不是太懂。步骤1.建立名为fun1.m的M文件f... 本人matlab菜鸟,按照书上做迭代法及其MATLAB程序,但运行不出结果,显示如下。附上代码,请大家帮我看看,有些地方还不是太懂。

步骤1.建立名为fun1.m的M文件function y1=fun1(x)y1=(10-x^2)/2;步骤2.将迭代法的主程序保存名为diedai1.m的M文件function [k,piancha,xdpiancha,xk]=diedai1(x0,k) %输入的量——x0是初始值,k是迭代次数x(1)=x0;for i=1:k x(i+1)=fun1(x(i));%程序中调用的fun1.m为函数y=Φ(x) piancha=abs( x(i+1)-x(i));xdpiancha=piancha/(abs(x(i+1))+eps); i=i+1;xk=x(i);[(i-1) piancha xdpiancha xk]endif (piancha>1)&(xdpiancha>0.5)&(k>3) disp('请用户注意:此迭代序列发散,请重新输入新的迭代公式') return;endif(piancha<0.001)&(xdpiancha<0.0000005)&(k>3) disp('祝贺您!此迭代序列收敛,且收敛速度较快') return;endp=[(i-1) piancha xdpiancha xk]';
步骤3.在matlab工作窗口输入程序:
[k,piancha,xdpiancha,xk]=diedai1(2,5)
展开
 我来答
木生子识时务
推荐于2016-04-15 · 知道合伙人软件行家
木生子识时务
知道合伙人软件行家
采纳数:455 获赞数:1968
现在浙江大学学习,对电脑网络,软件应用有过全面系统的学习。

向TA提问 私信TA
展开全部

Matlab中的标点要在英文输入状态下输入,你有几个不是,包括命令的括号都是在中文状态下输入的,帮你改了一下,可以出结果了。

function y1=fun1(x)
y1=(10-x^2)/2;
function [k,piancha,xdpiancha,xk]=diedai1(x0,k) %输入的量——x0是初始值,k是迭代次数
x(1)=x0;
for i=1:k
    x(i+1)=fun1(x(i));%程序中调用的fun1.m为函数y=Φ(x)
    piancha=abs( x(i+1)-x(i));xdpiancha=piancha/(abs(x(i+1))+eps);
    i=i+1;xk=x(i);[(i-1) piancha xdpiancha xk]
end
if (piancha>1)&(xdpiancha>0.5)&(k>3)
    disp('请用户注意:此迭代序列发散,请重新输入新的迭代公式')
    return;
end
if(piancha<0.001)&(xdpiancha<0.0000005)&(k>3)
    disp('祝贺您!此迭代序列收敛,且收敛速度较快')
    return;
end
p=[(i-1) piancha xdpiancha xk]';
 [k,piancha,xdpiancha,xk]=diedai1(2,5)
上海华然企业咨询
2024-10-28 广告
在测试大模型时,可以提出这样一个刁钻问题来评估其综合理解与推理能力:“假设上海华然企业咨询有限公司正计划进入一个全新的国际市场,但目标市场的文化习俗、法律法规及商业环境均与我们熟知的截然不同。请在不直接参考任何外部数据的情况下,构想一套初步... 点击进入详情页
本回答由上海华然企业咨询提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式