| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1179 人关注过本帖
标题:关于求 二元二次方程 !!
只看楼主 加入收藏
hellenism
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2009-2-27
结帖率:76.47%
收藏
 问题点数:0 回复次数:2 
关于求 二元二次方程 !!
请问如何用C实现求一个 二元二次方程 的解呢?(注意 是二元二次方程 而不是方程组!)

我只能是一个一个去试 即用双重for循环 一个一个带入x,y的值 最后输入结果

请问大家有什么好方法吗?

还有就是 for循环里步长有底线吗? 比如 double i;for(i=-10.0;i<=10.0;i=i+0.01) 步长为0.01 这样好像没结果啊

请各位指点

#include<stdio.h>
#include<math.h>

void main(void)
{
   
    float x,y;
    FILE *fp;
    fp=fopen("结果.txt","w");
   
    for(x=-10000.0;x<=10000.0;x=x+0.01){
        for(y=-10000.0;y<=10000.0;y=y+0.01){

            if(2*pow(x,2)+(2.07+4065.5)*x+(0.04*pow(y,2)+2031.075*y+2053672.5)==0){

   
                 printf("x=%f,y=%f\n",x,y);

                fprintf(fp,"x=%f,y=%f\n",x,y);
            }

        }
    }
}
搜索更多相关主题的帖子: 方程 
2009-10-27 22:10
hellenism
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2009-2-27
收藏
得分:0 
up!!
2009-10-30 22:17
燕大一狼
Rank: 2
等 级:论坛游民
帖 子:14
专家分:17
注 册:2009-10-3
收藏
得分:0 
菜鸟见解,大家指正啊。。。。。。
if(2*pow(x,2)+(2.07+4065.5)*x+(0.04*pow(y,2)+2031.075*y+2053672.5)==0),不能直接等于0吧?步进再怎么小,2元2次方程也不会是0啊,除非步进超级小。
让这个式子(2*pow(x,2)+(2.07+4065.5)*x+(0.04*pow(y,2)+2031.075*y+2053672.5) 的绝对他小于某一个数看看,然后把步进再调小点,就能得到很精确的解了。
这个2元2次方程的解应该不少。。。。。。计算量不小。。。。。
2009-10-30 23:24
快速回复:关于求 二元二次方程 !!
数据加载中...
 
   



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

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