查看: 1954|回复: 12|关注: 0

[已解决] 初学者请问为什么出现如下情况 问题1:为什么出现未定义函数或变量 'x'。问题2:下图中的两个程序怎么弄到一起使用

[复制链接]

新手

7 麦片

财富积分


050


1

主题

8

帖子

0

最佳答案
谢谢各位老师了
捕获3.PNG
捕获2.PNG
回复主题 已获打赏: 0 积分

举报

论坛优秀回答者

9

主题

1631

帖子

342

最佳答案
  • 关注者: 81
发表于 2019-12-11 22:47:58 | 显示全部楼层
将zong.m文件中第一行的x1换为x试试
回复此楼 已获打赏: 0 积分

举报

新手

7 麦片

财富积分


050


1

主题

8

帖子

0

最佳答案
 楼主| 发表于 2019-12-11 22:50:46 | 显示全部楼层
20141303 发表于 2019-12-11 22:47
将zong.m文件中第一行的x1换为x试试

现在这个问题解决了但是现在运行会报错,然后终止程序
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

9

主题

1631

帖子

342

最佳答案
  • 关注者: 81
发表于 2019-12-11 22:52:48 | 显示全部楼层
wzk001315 发表于 2019-12-11 22:50
现在这个问题解决了但是现在运行会报错,然后终止程序

可以私信将程序发我看看
回复此楼 已获打赏: 0 积分

举报

新手

7 麦片

财富积分


050


1

主题

8

帖子

0

最佳答案
 楼主| 发表于 2019-12-11 22:58:31 | 显示全部楼层
现在是这种情况

现在是这个情况

现在是这个情况
回复此楼 已获打赏: 0 积分

举报

新手

7 麦片

财富积分


050


1

主题

8

帖子

0

最佳答案
 楼主| 发表于 2019-12-11 22:59:34 | 显示全部楼层
20141303 发表于 2019-12-11 22:52
可以私信将程序发我看看

function [y] = zong(m,x0,x1)
end
function y=q(x)
y=log(3*x);
dq.m
function y=dq(x)
y=1/x;
% UNTITLED 此处显示有关此函数的摘要
% m为迭代法代码:1 简单迭代法,2 埃特金法,3 三角形迭代法
% x0,x1,x2为迭代初值
% y为所求函数零点
format long
if m==1;x1=g(x0);end
if m==2;y=g(x0);z=g(y);x1=z-((z-y)*(z-y))/(z-2*y+x0);end
if m==3;x1=(q(x0)-dq(x0)*x0)/(1-dq(x0));end
n=1;
while (abs(x1-x0)>=1.0e-5)&&(n<=1000)
if m==1;x0=x1;x1=g(x0);end
if m==2;x0=x1;y=g(x0);z=g(y);x1=z-((z-y)*(z-y))/(z-2*y+x0);end
  if m==3;x0=x1;x1=(q(x0)-dq(x0)*x0)/(1-dq(x0));end
  n=n+1;
end
x1;
n;
end

end
回复此楼 已获打赏: 0 积分

举报

新手

7 麦片

财富积分


050


1

主题

8

帖子

0

最佳答案
 楼主| 发表于 2019-12-11 23:05:27 | 显示全部楼层
现在提示未找到路径是怎么回事
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

9

主题

1631

帖子

342

最佳答案
  • 关注者: 81
发表于 2019-12-12 09:41:30 | 显示全部楼层 |此回复为最佳答案
一些简单问题已经修改,修改后代码如下,保存文件名为zong.m
但还有问题,首先只有m=2时,才有y值,其次g(x)函数未定义(在下面个人随便定义了)
function y= zong(m,x0,x1,x2)

% UNTITLED 此处显示有关此函数的摘要
% m为迭代法代码:1 简单迭代法,2 埃特金法,3 三角形迭代法
% x0,x1,x2为迭代初值
% y为所求函数零点
format long
if m==1;x1=g(x0);end
if m==2;y=g(x0);z=g(y);x1=z-((z-y)*(z-y))/(z-2*y+x0);end
if m==3;x1=(q(x0)-dq(x0)*x0)/(1-dq(x0));end
n=1;
while (abs(x1-x0)>=1.0e-5)&&(n<=1000)
     if m==1;x0=x1;x1=g(x0);end
     if m==2;x0=x1;y=g(x0);z=g(y);x1=z-((z-y)*(z-y))/(z-2*y+x0);end
     if m==3;x0=x1;x1=(q(x0)-dq(x0)*x0)/(1-dq(x0));end
     n=n+1;
end
x1;
n;
end
function y=q(x)
y=log(3*x);
end
function y=dq(x)
y=1/x;
end
function y=g(x)
y=x-1;
end
回复此楼 已获打赏: 0 积分

举报

新手

7 麦片

财富积分


050


1

主题

8

帖子

0

最佳答案
 楼主| 发表于 2019-12-12 18:18:20 | 显示全部楼层
20141303 发表于 2019-12-12 09:41
一些简单问题已经修改,修改后代码如下,保存文件名为zong.m
但还有问题,首先只有m=2时,才有y值,其次g(x ...

谢谢老师 我会加油的
回复此楼 已获打赏: 0 积分

举报

新手

7 麦片

财富积分


050


1

主题

8

帖子

0

最佳答案
 楼主| 发表于 2019-12-12 18:24:35 | 显示全部楼层
20141303 发表于 2019-12-12 09:41
一些简单问题已经修改,修改后代码如下,保存文件名为zong.m
但还有问题,首先只有m=2时,才有y值,其次g(x ...

请问这是什么意思 谢谢了
捕获7.PNG
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表