| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 540 人关注过本帖
标题:[求助]C语言紧急求助!
只看楼主 加入收藏
boyang0305
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-1-3
收藏
 问题点数:0 回复次数:2 
[求助]C语言紧急求助!

今天就用!江湖救急!一定要快!紧急求救(C语言高手帮忙)
1、用二分法求解方程2x^3-4x2+3x-6=0在区间(-10,10)之间的根

2、用迭代法求解方程:x^3-x-1=0在x=1.5附近一根(用六位有效数字表示)


3、用C语言实现牛顿迭代法求方程:2x^3-4x^2+3x-6=0在1.5附近的实根



声明:
本人学化学的
这是计算机老师的作业

搜索更多相关主题的帖子: C语言 
2007-01-03 09:12
zbqf109
Rank: 1
等 级:新手上路
帖 子:289
专家分:0
注 册:2006-12-31
收藏
得分:0 

给你做一个,针对第一个题。要做通用的解法,还要该一些。
//用二分法求解方程2x^3-4x2+3x-6=0在区间(-10,10)之间的根

#include <stdio.h>
float solve();
float fun(float );
int main()
{
printf("%f\n",solve());
return 0;
}
float fun(float x)
{
float b=0;
b=2*x*x*x-4*x*x+3*x-6;
return b;
}
float solve()
{
float x=0,y=0,a=-10,b=10,hal=0,booler=0,val=0;
hal=(a+b)/2;
val=fun(hal);
while(val!=0)
{
x=fun(a);
y=fun(b);
if(x==0)
return a;
if(y==0)
return b;
val=fun(hal);
if(val>0)
{b=hal;
hal=(a+b)/2;

}
else{
a=hal;
hal=(a+b)/2;
}
}
return hal;
}


坚决不跟用TC的人打交道!
2007-01-03 11:09
aaabccc
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-11-6
收藏
得分:0 
用的是Aitken迭代加速法
#include <stdio.h>
#include <math.h>
double fun(double x)
{
double b=0;
/* b=x*x*x-1;*//*第二题*/
b=2*x*x*x-4*x*x+4*x-6;/*第三题*/
return b;
}
main()
{
double x=0,x1,x2,y=1.5;
clrscr();
while(fabs(x-y)>=10e-6)
{
x=y;
x1=fun(x); x2=fun(x1);
y=x2-(x2-x1)*(x2-x1)/(x2-2*x1+x);/*迭代格式*/
printf("x=%lf\t",x);
}
printf("\nx=%lf\n",x);
getch();
}

2007-01-03 20:23
快速回复:[求助]C语言紧急求助!
数据加载中...
 
   



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

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