24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1037  |  回复: 4
本帖产生 1 个 博学EPI ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

fzr417

木虫 (正式写手)


babyrabbit2006(金币+50, 博学EPI+1):谢谢了啊 2010-12-20 20:36:07
// 二次根.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "math.h"
#include   
using   namespace   std;


class Cercigeng
{
public:
        Cercigeng(float aa, float bb, float cc);
        ~Cercigeng();
        //函数返回值:实根的个数;
        //参数:x- 用以返回实根值的数组;
        long CalResult(float x[]);

private:
        float a;
        float b;
        float c;
};

Cercigeng::Cercigeng(float aa, float bb, float cc)
{
        a=aa;
        b=bb;
        c=cc;
}
Cercigeng::~Cercigeng()
{

}
long Cercigeng::CalResult(float x[])
{
        float delta = 0;
        long geshu=0;
        delta = b*b-4.0*a*c;
        if (delta < 0)
        {
                geshu = 0;
        }
        else if(fabs(delta)<1e-10)
        {
                x[0] = (-b+sqrt(delta))/2.0/a;
                geshu = 1;
        }
        else
        {
                x[0] = (-b+sqrt(delta))/2.0/a;
                x[1] = (-b-sqrt(delta))/2.0/a;
                geshu = 2;
        }
        return geshu;
}

int main(int argc, char* argv[])
{
        cout<<"求解方程的根!\n"<<"请输入a,b,c";
        float a,b,c;
        cin>>a>>b>>c;
        Cercigeng fangcheng(a,b,c);
       
        float xx[1];
        long GeShu = fangcheng.CalResult(xx);
        if (GeShu = 0)
        {
                cout<<"无实根!\n";
        }
        else if(GeShu = 1)
        {
            cout<<"方程有一个实根为"<         }
        else
        {
                cout<<"方程有二个实根,分别为"<         }

        cout<<"如果继续,请输入1!否则输入其它数字\n";
        int jixu=0;
        cin>>jixu;
        for (;(jixu-1)!=0
        {
                cout<<"求解方程的根!\n"<<"请输入a,b,c";
                cin>>a>>b>>c;
                Cercigeng fangcheng(a,b,c);
                GeShu = fangcheng.CalResult(xx);

                if (GeShu = 0)
                {
                        cout<<"无实根!\n";
                }
                else if(GeShu = 1)
                {
                        cout<<"方程有一个实根为"<                 }
                else
                {
                        cout<<"方程有二个实根,分别为"<                 }
        }

        return 0;
}




试试吧,应该没有问题的,我写了一下,但是没有编译运行,好运!
5楼2010-12-18 18:11:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 babyrabbit2006 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见