| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1392 人关注过本帖
标题:二分逼近法
只看楼主 加入收藏
heroic042
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-10-6
收藏
 问题点数:0 回复次数:2 
二分逼近法
請問各位高手~小弟需要寫一個程式以二分逼近法求任意函數(funtion)的根(roots)或根的近似值
可是小弟完全沒概念~請問各位高手能幫助我嗎?萬分感謝~~
搜索更多相关主题的帖子: 近似值 程式 funtion 
2005-10-17 08:54
ShaJia
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-10-8
收藏
得分:0 
二分法的思路就是:
先取一区间【x1,x2】,若函数在此区间单调变化 ,可根据f(x1),f(x2)是否同号来判断方程在此区间是否有根
这个相信你数学上应该学了把 ^_^, 若在此区间有根,可采取二分法蒋区间【x1,x2】一分为二
重复上述过程判断哪一个小区间有根。若没有,则可改变x1,x2的值,即区间范围。如此,则不断接近方程的根。

2005-10-17 11:33
firstlijia
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2005-10-8
收藏
得分:0 
#include<math.h>
#define F(r) "这里定义你的函数吧"
main()
{
float a,b,x,fa,fb,fx;
do
{
printf("input a&b:\n");
scanf("%f%f",&a,&b);
fa=F(a);
fb=F(b);
}
while(fa*fb>1e-6);
do
{
x=(a+b)/2;
fx=F(x);
if(fa*fx>0)
{a=x;
fa=fx;}
else
{b=x;
fb=fx;}}
while(fabs(fx)>=1e-5);
printf("%6.2f\n",x);
getch();}



2005-10-18 11:35
快速回复:二分逼近法
数据加载中...
 
   



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

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