| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 769 人关注过本帖
标题:初学者 求助:用弦截法求方程x*x*x*x+4*x*x*x-3*x*x+5*x+6=0的根(要求使用 ...
只看楼主 加入收藏
mqhz
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-8-31
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:2 
初学者 求助:用弦截法求方程x*x*x*x+4*x*x*x-3*x*x+5*x+6=0的根(要求使用函数嵌套调用)
我用的是Dev-c++,编写程序如下:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

double f(double x)
{
    double y;
    y=x*x*x*x+4*x*x*x-3*x*x+5*x+6;
    return(y);
    }
double point(double x1, double x2)
{
    double x;
    double y1;
    double y2;
    y1=f(x1);
    y2=f(x2);
    x=(x1*y2-x2*y1)/(y2-y1);
    return(x);
    }
double root(double x1, double x2)
{
       double x;
       double y;
       double y1;
       y1=f(x1);
       do
       {
                          x=point(x1, x2);
                          y=f(x);
                          if(y*y1>0)
                          {
                                    x1=x;
                                    y1=y;
                                    }
                          else
                          x2=x;
                             }
                             while(fabs(y)>=1e-9);
                             return(x);
       }
int main(int argc, char *argv[])
{
  double x1;
  double x2;
  double r;
  double y1;
  double y2;
  do
  {
         printf("请输入两个数:\n");
         scanf("%lf%lf", &x1, &x2);
         y1=f(x1);
         y2=f(x2);
         }while((y1*y2)>=0);
  r=root(x1, x2);
  printf("该方程的根为: r=%lf\n");
  system("PAUSE");   
  return 0;
}
输入10 和-2,运行结果不正确,为:该方程的根为:r=-44686712925511037000000000000000000000000000000000000000000000000

请各位大侠帮忙分析一下我哪里出错了,不胜感激!!!
搜索更多相关主题的帖子: 编写程序 include double return 
2011-10-21 17:06
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:5 
回复 楼主 mqhz
printf("该方程的根为: r=%lf\n", r);

总有那身价贱的人给作业贴回复完整的代码
2011-10-21 17:38
mqhz
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-8-31
收藏
得分:0 
多谢楼上的兄弟。
2011-10-21 20:07
快速回复:初学者 求助:用弦截法求方程x*x*x*x+4*x*x*x-3*x*x+5*x+6=0的根(要求 ...
数据加载中...
 
   



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

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