楼主: hrbatanu
2014 10

[问答] 一道入门matlab问题 [推广有奖]

11
flysyq 在职认证  发表于 2013-7-1 21:25:44
function [result,error,iter]=sqrt_test(x,a)
s=10^-4;
ju=1;
t=0;
i=0;
er = 0;
if(a<0)
        ju = 0;
        a=-a;
end
if(a==0)
        x=0;
else         
         while(t==0)
                xnew = (x+a/x)/2;
                er = abs((xnew-x)/xnew);
                x = xnew;
                i=i+1;
                if(er<s)
                        t = 1;
                        break;
                end
         end
end
if(ju==1)
result = x;
else
result = strcat(num2str(x),'i');
end
error = er;
iter = i;
end
增加了0除问题

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-11 13:33