| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1025 人关注过本帖, 1 人收藏
标题:求方程的根
取消只看楼主 加入收藏
meishild
Rank: 1
来 自:哈尔滨
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-12-9
收藏(1)
 问题点数:0 回复次数:0 
求方程的根
#include <stdio.h>
#include <math.h>
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)
{
 int i;
 float x,y,y1;
 y1=f(x1);
 do
 {
  x=xpoint(x1,x2);
  y=f(x);
  if(y*y1>0)
  {
   y1=y;
   x1=x;
  }
  else
  {
   x2=x;
  }
 }
 while (fabs(y)>0.00001);
 return x;
}
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);
}

有没有简单点的方法除了用弦截法
搜索更多相关主题的帖子: 方程 
2007-12-10 12:42
快速回复:求方程的根
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029851 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved