24小时热门版块排行榜    

查看: 519  |  回复: 2
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

路过081001

铜虫 (正式写手)

[求助] 求高手,,C语言弦截法方程的根,我同谭浩强的视频程序几乎没有差别,为什么求不出呢

#include
#include

float f(float x)
{
        return ((x-5)*x+16)*x-80;
}

float xpoint(float x1,float x2)
{
return (x1*f(x2)-x2*f(x1))/(f(x2)-f(x1));

}


float root(float x1,float x2)
{  
  float x,y,y1,y2;
  y1=f(x1);y2=f(x2);
  do
  {
   x=xpoint(x1,x2);
   y=f(x);
   if(y*y1>0) {y1=y;x1=x;}
   else {x2=x;y2=y;}
  } while (fabs(y)>0.00001);
  return x;
}


void main()
{
float x,x1,x2,y1,y2;

  do
  { printf("input x1,x2:";
    scanf("%f,%f",&x1,&x2);
    y1=f(x1);
        y2=f(x2);
  } while(y1*y2>0);

x=root(x1,x2);

printf("A root is %f\n",x);

}
回复此楼

» 猜你喜欢

不要光上人人QQ,不然好没出息。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chunyuan314

银虫 (正式写手)

LZ,问题出在root函数 do-while循环部分。
按弦截法,root函数可以这样:
float root(float x1,float x2)
{  
  float x,y,y1,y2;
  y1=f(x1);y2=f(x2);
   x=xpoint(x1,x2);
   y=f(x);
   if(fabs(y)<0.00001){ /* 如果精度达到,Okay */
       return x;
   }else if(y*y1>0){  /*即如果新的y与y1同号,则改为在x~x2之间用弦截法*/
       return root(x,x2);
   }else{
       return root(x1,x);  /*否则就在在x1~x之间用弦截法*/
   }
}

运行root(-10,10)可得到5

函数图形.png

Lifeisgood
3楼2013-01-29 20:09:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 3 个回答

wpwupingwp

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
南无观世音菩萨
2楼2012-11-18 17:29:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 北科281学硕材料求调剂 +11 tcxiaoxx 2026-03-20 13/650 2026-03-25 15:38 by barlinike
[考研] 289求调剂 +11 硕星赴 2026-03-23 11/550 2026-03-25 15:33 by fch1983
[考研] 各位老师您好:本人初试372分 +5 jj涌77 2026-03-25 6/300 2026-03-25 14:15 by mapenggao
[考研] 271求调剂 +4 生如夏花… 2026-03-22 4/200 2026-03-25 11:25 by userper
[考研] 286求调剂 +11 Faune 2026-03-21 11/550 2026-03-25 10:11 by 雾散后相遇lc
[考研] 318求调剂 +5 plum李子 2026-03-21 8/400 2026-03-25 09:26 by aa331100
[考研] 一志愿中南大学化学学硕0703总分337求调剂 +6 niko- 2026-03-22 6/300 2026-03-25 09:14 by aa331100
[考研] 085404电子信息284分求调剂 +4 13659058978 2026-03-24 4/200 2026-03-24 12:15 by syl20081243
[考研] 【双一流院校新能源、环境材料,材料加工与模拟招收大量调剂】 +4 Higraduate 2026-03-22 7/350 2026-03-24 11:23 by 种大树
[考博] 26申博自荐 +3 whh869393 2026-03-24 3/150 2026-03-24 09:55 by 21018060
[考研] 一志愿陕师大生物学071000,298分,求调剂 +3 SYA! 2026-03-23 3/150 2026-03-23 19:09 by macy2011
[考研] 280分求调剂 一志愿085802 +4 PUMPT 2026-03-22 7/350 2026-03-22 22:13 by 星空星月
[考研] 一志愿西安交通大学材料工程专业 282分求调剂 +11 枫桥ZL 2026-03-18 13/650 2026-03-22 20:26 by edmund7
[考研] 0703化学297求调剂 +3 Daisy☆ 2026-03-20 3/150 2026-03-21 17:45 by ColorlessPI
[考研] 336求调剂 +5 rmc8866 2026-03-21 5/250 2026-03-21 17:24 by 学员8dgXkO
[考研] 279求调剂 +5 红衣隐官 2026-03-21 5/250 2026-03-21 14:59 by lature00
[考研] 22408 344分 求调剂 一志愿 华电计算机技术 +4 solanXXX 2026-03-20 4/200 2026-03-20 23:49 by alg094825
[考研] 一志愿南昌大学,327分,材料与化工085600 +9 Ncdx123456 2026-03-19 9/450 2026-03-20 23:41 by lovewei0727
[考研] 330求调剂 +4 小材化本科 2026-03-18 4/200 2026-03-20 23:13 by JourneyLucky
[考研] 317求调剂 +5 申子申申 2026-03-19 9/450 2026-03-20 22:26 by JourneyLucky
信息提示
请填处理意见