精华内容
下载资源
问答
  • 一元高次方程求解

    千次阅读 2005-03-18 20:10:00
    //求解一元次方程 void solu_w(double b,double c) { double tem,tem1; tem1=b*b-4*c; double m,n; m=(-1)*b/2; //判断是实数解还是复数解。 if (tem1>=0) { tem=sqrt(tem1); n=tem/2; cout方程根为:";...
    //本程序基于.NET平台,编译环境是Microsoft Visual C++ .NET
    //对于VC++6.0平台的修改,只须把stdafx.h换成iostream.h,然后去掉主函数里的“using namespace std”
    //详情见blog.csdn.net/chinley。
    //#include "stdafx.h"
    #include "iostream.h"
    #include "math.h"
    //using namespace std;
    double du,dv;
    
    //求解一元二次方程
    void solu_w(double b,double c)
    {
        double tem,tem1;
        tem1=b*b-4*c;
        double m,n;
        m=(-1)*b/2;
    
    //判断是实数解还是复数解。
        if (tem1>=0)
        {
            tem=sqrt(tem1);
            n=tem/2;
            cout<<"/n方程根为:"<<'/n'<<"/t X1 = "<<m+n<<'/n'<<"/t X2 = "<<m-n<<endl;
        }
        else
        {
            tem=sqrt((-1)*tem1);
            n=tem/2;
            cout<<"/n方程根为:"<<'/n'<<"/t X1 = "<<m<<" + "<<n<<" i"<<'/n'<<"/t X2 = "<<m<<" - "<<n<<" i"<<'/n'<<endl;
        }
    }
    
    //求解二元一次方程组,其中(a、b、c)、(d、e、f)是方程组两个的系数,一次是常数项、x系数、y系数。
    void get_du_dv(double a,double b,double c,double d,double e,double f)
    {
        dv=(b*d-a*e)/(c*e-b*f);
        du=(c*d-a*f)/(b*f-c*e);
    }
    
    void main()
    {
        cout<<"详情见blog.csdn.net/chinley。/n";
    
        int t1,t2,t3;
        double * a;
        cout<<"输入阶数:";//具体原因待查
        cin>>t1;
        a=new double [t1];
        t3=t2=t1;
    
        cout<<"输入各次项的系数:/n";
        for (t1;t1>=0;t1--)
        {
            cout<<"/ta["<<t1<<"]=";
            cin>>a[t1];
        }
        cout<<"方程为:/n/t";
        for (t2;t2>=1;t2--)
        {
            cout<<a[t2]<<" X^"<<t2<<" + ";
        }
        cout<<a[0]<<" = 0"<<endl;
        double u,v;
        cout<<"输入因子的常数项和一次项系数:"<<endl;
        cout<<"/t u = ";
        cin>>u;
        cout<<"/t v = ";
        cin>>v;
        cout<<"/n因子式为:/n/t w(X) = "<<"X^2 + "<<u<<" (X) + "<<v<<endl;
    
        double p[98],r0,r1;
    
        cout<<"/n输入修正次数: ";
        int count1;
        cin>>count1;
    
        for (count1;count1>=0;count1--)
        {
            p[t3]=p[t3-1]=0;
            int t4=t3-2;
            for (t4;t4>=0;t4--)
            {
                p[t4]=a[t4+2]-p[t4+2]*v-p[t4+1]*u;
                r0=a[1]-v*p[1]-u*p[0];
                r1=a[0]-v*p[0];
                //下面一行加在程序中,将导致的问题是:如果修正次数太大,程序运行时间大大延长,主要时间消耗在屏幕显示上。
                //cout<<"/t p(X) = "<<p[2]<<" (X*X) + "<<p[1]<<" (X) + "<<p[0]<<" = 0"<<endl;
                double r0v,r1v,r0u,r1u;
                r0v=u*p[2]-p[1];
                r1v=v*p[2]-p[0];
                r0u=r1v-u*r0v;
                r1u=(-1)*v*r0v;
                get_du_dv(r0,r0u,r0v,r1,r1u,r1v);
            }
    
            u=u+du;
            v=v+dv;
        }
        solu_w(u,v);
    }

     

    展开全文
  • 一元高次方程作为方程的一部分,对我们后续的学习起着相当重要的作用求解一元高次方程的根在计算数学方面既是难点也是重点。一元次方程一元方称有一般解法,但是比较复杂,且超过了一般的知识范围5以及5...

    一元高次方程数值解法C程序实现探? 一元高次方程作为方程的一部分,对我们后续的学习起着相当重要的作用求解一元高次方程的根在计算数学方面既是难点也是重点。一元三次方程和一元四次方称有一般解法,但是比较复杂,且超过了一般的知识范围5次以及5次以上的代数方程,没有一般的公式解法。文我们了解了系数在有理数域且只有有理根的一元高次方程的解法技巧一元二次方程根式解的推敲了一元三次、四次方程的根式解;最后介绍了两种解高次方程数值解通用的两种方法:二分法、牛顿法。要求我们在了解一元二次方程的同时掌握一元三次及四次方程的根式解意义,理解用二分法及牛顿法解一元高次方程数值解法的思想及意义Polynomial equations C program discuss

    Abstract

    Polynomial equations as part of the equation, for our subsequent learning plays a very important role. Solving a polynomial equation root in computational mathematics is a difficult and key point.

    On polynomial equations, we in the stage of middle school, have mastered the two once basic quadratic equation formula solution; three once basic quadratic equation and a four power said that general solutions, but are more complex, and more than the general scope of knowledge; the 5and more than 5algebraic equation, no general formula solution,

    In this paper we understand the coefficients in the field of rational numbers and only the rational root of polynomial equations based on techniques, Through the memories we learned two once basic quadratic equation root solution method, the study of one dollar three times, four times radical solution; finally introduced two kinds of solution of equation of higher degree numerical solution of general by two methods: the dichotomy, the Newton-Raphson method. We know two once basic quadratic equation while master of one dollar three times and four times the radical solution of equation of meaning, understand the use of dichotomy and Newtons method for solving polynomial equations numerical solution of the thought and meaning

    Key words: Equation of higher degree, Dichotomy,

    Newton method, Iterative

    目录

    摘要

    绪论

    选题分析

    2.1选题的研究现状

    2.2选题的意义

    2.3论文的主要内容

    3 解方程

    3.1 一元三次方程的根式解法

    3.3 二分法解一元高次方程

    3.4 牛顿法解一元高次方程

    参考文献

    致谢

    1.绪论

    整式方程未知数次数最高项次数高于2次的方程,称为高次方程。高次方程解法思想是通过适当的方法,把高次方程化为次数较低的方程求解。对于5次及以上的一元高次方程没有通用的代数解法和求根公式(即通过各项系数经过有限次四则运算和乘方和开方运算无法求解),这称为阿贝尔定理。 换句话说,只有三次和四次的高次方程可用根式求解。人类很早就掌握了

    展开全文
  • VFp一元次方程求解实例一元次方程求解实例一元次方程求解实例一元次方程求解实例
  • 一元次方程求解

    2014-04-25 15:48:47
    一元次方程求解器,用来求解一元次方程
  • c++ 一元次方程求解

    2012-11-24 15:26:05
    c++ 一元次方程求解
  • 一元次方程求解

    2013-05-20 10:13:22
    用C#语言进行一元次方程求解,方法并不唯一
  • 不会出错的,用matlabsolve('x^4-13*x^2-5*sqrt(2)*x 36=0')ans =x1=1/6*3^(1/2)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 1/6*3^(1/2)*((52*...

    不会出错的,用matlab

    solve('x^4-13*x^2-5*sqrt(2)*x 36=0')

    ans =

    x1=1/6*3^(1/2)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 1/6*3^(1/2)*((52*(15326 15*79131^(1/2))^(1/3)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2)-((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2)*(15326 15*79131^(1/2))^(2/3)-601*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 30*2^(1/2)*3^(1/2)*(15326 15*79131^(1/2))^(1/3))/(15326 15*79131^(1/2))^(1/3)/((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2))^(1/2)

    x2=1/6*3^(1/2)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2)-1/6*3^(1/2)*((52*(15326 15*79131^(1/2))^(1/3)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2)-((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2)*(15326 15*79131^(1/2))^(2/3)-601*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 30*2^(1/2)*3^(1/2)*(15326 15*79131^(1/2))^(1/3))/(15326 15*79131^(1/2))^(1/3)/((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2))^(1/2)

    x3=-1/6*3^(1/2)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 1/6*i*((-156*(15326 15*79131^(1/2))^(1/3)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 3*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2)*(15326 15*79131^(1/2))^(2/3) 1803*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 90*2^(1/2)*3^(1/2)*(15326 15*79131^(1/2))^(1/3))/(15326 15*79131^(1/2))^(1/3)/((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2))^(1/2)

    x4=-1/6*3^(1/2)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2)-1/6*i*((-156*(15326 15*79131^(1/2))^(1/3)*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 3*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2)*(15326 15*79131^(1/2))^(2/3) 1803*((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2) 90*2^(1/2)*3^(1/2)*(15326 15*79131^(1/2))^(1/3))/(15326 15*79131^(1/2))^(1/3)/((26*(15326 15*79131^(1/2))^(1/3) (15326 15*79131^(1/2))^(2/3) 601)/(15326 15*79131^(1/2))^(1/3))^(1/2))^(1/2)。

    全部

    展开全文
  • 一元次方程求解.exe

    2021-04-12 09:27:24
    一元次方程求解
  • 一元次方程解法

    2013-03-13 17:14:44
    自己用VB编制的可以解任何一元次方程的程序应用
  • 主要介绍了c#实现一元次方程求解器示例,需要的朋友可以参考下
  • MATLAB实现一元次方程求解/盛金公式

    万次阅读 多人点赞 2018-10-11 00:17:04
    MATLAB实现一元次方程求解/盛金公式 一元次方程求解中,1945年卡尔丹诺把冯塔纳的三次方程求根公式发表出来,但该公式形式比较复杂,直观性也较差。1989年范盛金对一元次方程求解进行了深入的研究和探索,提出...

    MATLAB实现一元三次方程求解/盛金公式

    一元三次方程求解中,1945年卡尔丹诺把冯塔纳的三次方程求根公式发表出来,但该公式形式比较复杂,直观性也较差。1989年范盛金对一元三次方程求解进行了深入的研究和探索,提出了更加简洁实用的求解公式-盛金公式。这里对盛金公式进行简要的介绍,并给出MATLAB实现的具体代码和部分算例。参考资料:百度百科-卡尔丹公式;百度百科-盛金公式

    一元三次方程求解–盛金公式

    一元三次方程 ax3+bx2+cx+d=0ax^3 +bx^2+cx+d=0 重根判别式A=b23acA=b^2-3acB=bc9adB=bc-9adC=c23bdC=c^2-3bd总判别式Δ=B24AC\Delta=B^2-4AC

    下面给出盛金判别法的结论

    条件1A=B=0A=B=0时:x1=x2=x3=b3a=cb=3dcx1=x2=x3= \frac{-b}{3a}= \frac{-c}{b}= \frac{-3d}{c}
    条件2Δ=B24AC&gt;0\Delta=B^2-4AC&gt;0时:x1=b(Y13+Y23)3ax1= \frac{-b-(\sqrt[3]{Y1}+\sqrt[3]{Y2})}{3a} x2=b+0.5(Y13+Y23)+0.53(Y13Y23)i3ax2=\frac{-b+0.5(\sqrt[3]{Y1}+\sqrt[3]{Y2})+ 0.5{\sqrt{3}} (\sqrt[3]{Y1}-\sqrt[3]{Y2})i}{3a} x3=b+0.5(Y13+Y23)0.53(Y13Y23)i3ax3=\frac{-b+0.5(\sqrt[3]{Y1}+\sqrt[3]{Y2})- 0.5{\sqrt{3}} (\sqrt[3]{Y1}-\sqrt[3]{Y2})i}{3a}其中,Y1=Ab+1.5a(B+B24AC)Y1=Ab+1.5a({-B+\sqrt{B^2-4AC}})Y2=Ab+1.5a(BB24AC)Y2=Ab+1.5a({-B-\sqrt{B^2-4AC}})
    条件3Δ=B24AC=0\Delta=B^2-4AC=0时:x1=BAbax1= \frac{B}{A}- \frac{b}{a} x2=x3=B2Ax2= x3= -\frac{B}{2A}
    条件4Δ=B24AC&lt;0\Delta=B^2-4AC&lt;0时:x1=b2Acosθ33ax1= \frac{-b-2\sqrt{A}cos{\frac{\theta}{3}}}{3a} x2=b+A(cosθ3+3sinθ3)3ax2= \frac{-b+\sqrt{A}(cos{\frac{\theta}{3}}+\sqrt{3}sin{\frac{\theta}{3}}) }{3a} x3=b+A(cosθ33sinθ3)3ax3= \frac{-b+\sqrt{A}(cos{\frac{\theta}{3}}-\sqrt{3}sin{\frac{\theta}{3}}) }{3a} 其中,θ=arccosT\theta=\arccos{T}T=2Ab3aB2AAT=\frac{2Ab-3aB}{2A\sqrt{A}}
    此外,推导得到的盛金定理表明任意实系数的一元三次方程都可以运用盛金公式解算
    通过上述4个条件即可求得一元三次方程的所有根(实根和虚根)。

    MATLAB代码-盛金公式

    function x = Solve3Polynomial(a, b, c, d)
    % 范盛金. 一元三次方程的新求根公式与新判别法[J]. 海南师范学院学报,1989,2(2):91-98.
    A = b*b - 3*a*c;   if abs(A) < 1e-14;    A = 0;  end
    B = b*c - 9*a*d;   if abs(B) < 1e-14;    B = 0;  end
    C = c*c - 3*b*d;   if abs(C) < 1e-14;    C = 0;  end  
    DET = B*B - 4*A*C; if abs(DET) < 1e-14;  DET = 0;  end  
    if (A == 0) && (B == 0)
        x1 = -c/b;      x2 = x1 ;    x3 = x1;
    end
    if DET > 0
        Y1 = A*b + 1.5*a*(-B + sqrt(DET));
        Y2 = A*b + 1.5*a*(-B - sqrt(DET));
        y1 = nthroot(Y1,3);  y2 = nthroot(Y2,3);
        x1 = (-b-y1-y2)/(3*a);
        vec1 = (-b + 0.5*(y1 + y2))/(3*a);  
        vec2 = 0.5*sqrt(3)*(y1 - y2)/(3*a);
        x2 = complex(vec1, vec2);
        x3 = complex(vec1, -vec2);
        clear Y1 Y2 y1 y2 vec1 vec2;
    end
    if DET == 0 && (A ~= 0) && (B ~= 0)
        K = (b*c-9*a*d)/(b*b - 3*a*c); K = round(K,14);
        x1 = -b/a + K;   x2 = -0.5*K;   x3 = x2;
    end
    if DET < 0
        sqA = sqrt(A);
        T = (A*b - 1.5*a*B)/(A*sqA);
        theta = acos(T);
        csth  = cos(theta/3);
        sn3th = sqrt(3)*sin(theta/3);
        x1 = (-b - 2*sqA*csth)/(3*a);
        x2 = (-b + sqA*(csth + sn3th))/(3*a);
        x3 = (-b + sqA*(csth - sn3th))/(3*a);
        clear sqA T theta csth sn3th;
    end
    x = [x1;  x2;  x3];
    end
    

    值得说明的是:当得到的3个解中至少存在一个复数根时,matlab会将实数结果显示为a+0.0000000ia+0.0000000i的形式。

    算例验证

    算例1: x3+5.4x2+9.72x+5.832=0x^3+5.4x^2+9.72x+5.832=0

    参考值:x1=x2=x3=1.8x1=x2=x3=1.8
    算例1的结果

    算例2: 2x3+11x2+182x+255=02x^3+11x^2+182x+255=0

    参考值:x1=1.5x2=2+9ix3=29ix1=-1.5; x2=-2+9i;x3=-2-9i
    算例2的结果

    算例3: x3+5.5x2+9.92x+5.888=0x^3+5.5x^2+9.92x+5.888=0

    参考值:x1=2.3x2=x3=1.6x1=-2.3; x2=x3=-1.6
    算例3的结果

    算例4: 100x3420x2+467x105=0100x^3-420x^2+467x-105=0

    参考值:x1=0.3x2=2.5x3=1.4x1=0.3; x2=2.5; x3=1.4
    算例4的结果

    上述4个算例可以看出,MATLAB实现过程中基本无误。

    展开全文
  • 一元次方程求解

    2015-05-20 20:46:13
    一元次方程求解器,非常好用。和大家分享一下
  • 一元次方程求解是一款可解答一元次方程求解可解一元次方程一元次方程,不需要的数位请输入0,系数的最大值为999。
  • 对于简单的一元次方程的迭代#include #include #include #define MAXTIMES 5typedef int times;typedef double coefficient;typedef struct _properties{coefficient x; //系数times n;//次数}...
  • 其中,方程根的解法更是一元次方程的重中之重,下面就给大家分析一下一元次方程在初中学习中常见的方程解法:[1]求解一元次方程求解一元次方程方程常见的有三种方法:(1)公式法:将一元次方程化为一般...
  • 一元次方程求解C++

    2011-03-27 11:43:11
    一元次方程求解(包括虚数解),输入系数a&b&c
  • 记得第一学习一元次方程是在初中的时候。那个时候老师就告诉我们,一元次方程一般有两个根,一元n次方程则一般有n个根。后来在课外书上了解到,这个结论最早是由数学王子...人们认识数的过程同求解一元n代...
  • 【考点1 一元次方程的定义】【方法点拨】一元次方程:只含有一个未知数,并且未知数的次数是1,并且含未知数项的系数不是零的整式方程一元次方程.【点睛】本题主要考查了一元次方程的一般形式,只含有一个...
  • C++实现了一元次方程求解,利用二分法求解,只需要输入一元次方程的四个系数,就可以求出实数解
  • 一元高次方程求解

    千次阅读 2014-08-29 03:32:30
    以下将逐步讨论各阶次的一元方程解法及程序上的实现。   1、一方程 a1x+a0=0 一元一方程实际上也可以叫做一元线性方程,这个求解很简单,编程上也不需做特出处理。  x=-a0/a1   2、二...
  • 一元次方程求解java

    2010-09-18 12:34:32
    java写的简单的一元次方程求解希望大家有兴趣的下了看看
  • 一元次方程求解C++代码,比较简单易懂的,编译通过的,可以直接拿来用的。
  • 一元次方程求解

    2018-01-22 15:22:56
    Name: 一元次方程求解 Copyright: Author: Date: 22-01-18 15:08 Description: 一元次方程求解 总时间限制: 1000ms 内存限制: 65536kB 描述 有形如:ax3+bx2+cx+d=0 这样的一个一元次方程。 给出该...
  • 如何快速高效地求解一元高次方程是数值计算领域一个重要的问题。传统的牛顿迭代法及基于其的改进算法等,在求解过程中存在需要初始值、求解不完全等不足。针对这些问题,研究了求解一元高次方程的并行计算方法,将...
  • 应用面向对象编程思想,适用于初学者学习c++编程时的理解和应用。具体实现了一元次方程求解,代码较为简洁但是有一定的学习价值,希望能给您的学习带来帮助!
  • c++编程,函数调用实现一元次方程求解。分成系数输入、方程求解、三角函数求解和结果输出四个函数,利用全局变量调用函数里面返回的一元次方程的根在接下去的函数里继续调用。
  • 该软件是C# WinForm应用程序,用以求解一元次方程的动态运算工具。 如:a * x + b * x^2 + c * x^3 + d=0 的一元次方程,其中a、b、c、d均为常数,手动输入改常数,即可动态运算求得结果

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,711
精华内容 4,284
关键字:

一元高次方程解法