电子产业一站式赋能平台

PCB联盟网

搜索
查看: 838|回复: 0
收起左侧

大神们帮帮忙

[复制链接]

604

主题

970

帖子

5115

积分

四级会员

Rank: 4

积分
5115
发表于 2022-11-10 19:20:12 | 显示全部楼层 |阅读模式
为什么这个程序直接点击运行没事,但是选中之后执行就显示未定义f未定义呢?
clc;
clear;
br>tol=0.00000001;
a=-1;
b=2;
ya=feval(@f,a);
yb=feval(@f,b);
max=round((log(b-a)-log(tol))/log(2));
if ya*yb>0
  fprintf("二分法不适用")  ;
else
    for k=1:max
        c=(a+b)/2;
        yc=feval(@f,c);
        ac=c-a;
        if yc==0
           b=c;
           a=c;
        elseif  yc*yb>0
            b=c;
        else
           a=c;
        end
         err(k)=b-a;
        if err(k)<tol
            break
        end
    end
    fprintf("结果为:%f",(a+b)/2);
end
function [y]=f(x)
    y=sin(x);
end
回复

使用道具 举报

发表回复

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

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表