作业帮 > 综合 > 作业

关于matlab中循环控制

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/06/30 16:48:03
关于matlab中循环控制
我想在matlab中用迭代法求解方程1-115/x^2=0的解,利用牛顿法得到迭代公式
x(i+1)=x(i)-{[x(i)]^2-115*x(i)}/230.经其他算法验证迭代公式没有错误.我想在迭代过程中对结果精度进行控制.因而引入变循环次数j当打不到计算精度时循环次数加一.精度满足时跳出for循环.自己走了几遍程序感觉没错可是总是循环四次就停止了,而且没有满足跳出循环的条件.计算精度总是达不到设置精度.求大神们给瞧瞧到底是哪错了.代码如下.
j=2
x0 = 10;
for i= 1:j
x = x0-(x0^3-115*x0)/230;
if abs(x-x0)
关于matlab中循环控制
这是因为j是在for循环里变化的,而i=1:j是在开始就赋值的,初值等于2,它是不会根据循环里j的变化而变化的,如果你要计算迭代次数,用下面的方法即可,n为迭代次数,满意请采纳,谢谢!还有你文字中的迭代公式x0是2次方,程序里确实3次方,请注意修改.
clc
clear
j=100;
x0 = 10;
n=0; %迭代次数
for i= 1:j
x = x0-(x0^3-115*x0)/230;
if abs(x-x0)