精华内容
下载资源
问答
  • 最简单的一元二次方程求根问题的C源码,小白易懂,忽略了简洁好看,突出易懂,已在Devc++和VC++成功运行。
  • 对于简单的一元次方程的迭代#include #include #include #define MAXTIMES 5typedef int times;typedef double coefficient;typedef struct _properties{coefficient x; //系数times n;//次数}...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

    下面的代码是我刚才无聊写的。对于简单的一元多次方程的迭代

    #include

    #include

    #include

    #define MAXTIMES 5

    typedef int times;

    typedef double coefficient;

    typedef struct _properties

    {

    coefficient x; //系数

    times n;//次数

    }properties; typedef properties equation_expression ;

    equation_expression equ[MAXTIMES];

    double diff(double x)

    {

    double ds = 0.0 ;

    for(int i = 0 ;i< MAXTIMES ;i++)

    {

    if(equ[i].n ==0 )

    continue;

    else{

    double xn = 1.0;

    for(int j =0 ;j

    xn *= x;

    ds += equ[i].x *equ[i].n* xn;

    }

    }

    return ds;

    }

    double equvalue(double x)

    {

    double ds = 0.0 ;

    for(int i = 0 ;i< MAXTIMES ;i++)

    {

    if(equ[i].n ==0 )

    ds += equ[i].x;

    else

    {

    double xn = 1.0;

    for(int j =0 ;j

    xn *= x;

    ds += xn * equ[i].x;

    }

    }

    return ds;

    }

    //

    void buildequfunction()

    {

    printf("input data like this a ,b a is coefficient b is times of equation\n");

    //sorry dont realize; this time just do ax^2+ bx +c = 0

    equ[0].x = 2.0;

    equ[0].n = 2;

    equ[1].x = 7.0;

    equ[1].n = 1;

    equ[2].x = 3.0;

    equ[2].n = 0;

    equ[3].x = 3.0;

    equ[3].n = 3;

    //this 3*x^3 +2x^2 + 7x +3 = 0

    }

    int main (void) {

    memset(equ,0,sizeof(equ));

    buildequfunction();

    double error_control = 0.0000000001 ;

    double _begin, _end ;

    //so you should give a data to begin the game.and some times it will not work.

    scanf("%lf",&_begin);

    do{

    _end = _begin - equvalue(_begin)/diff(_begin);

    }while( (fabs(_end -_begin)> error_control)&& (_begin = _end));

    printf("one %lf \n",_end);

    }

    展开全文
  • Python一元二次方程求根

    万次阅读 多人点赞 2018-09-18 17:36:34
    Python一元二次方程求根 1、任务简介 在之前的博客中我分享了使用Java进行一元二次方程求根的方法,在学习了Python之后我也想使用Python编写一个类似的程序,故在编写成功后将该任务分享出来。 2、任务代码 ...

    Python一元二次方程求根

    1、任务简介

    在之前的博客中我分享了使用Java进行一元二次方程求根的方法,在学习了Python之后我也想使用Python编写一个类似的程序,故在编写成功后将该任务分享出来。


    2、任务代码

    学习过Java和Python的人都知道,Python的语法比Java简洁得多,并且目前已经广泛应用于爬虫开发、web开发、人工智能和机器学习等主流方向,是一种面向对象的语言,我学习Python的初衷就是为了学习爬虫,目前只是个小白,故只能给大家分享求根计算的程序,哈哈。

    在Python中可以使用input来读取用户输入的信息,但是默认将用户输入的的信息保存为字符串的形式,所以需要强制类型转换为float的形式,这样在计算时才可以避免出现错误,在计算根时使用的语句和Java类似,但是math应全为小写,输出语句中的连接应该为逗号“,”。

    程序代码如下:

    import math
    a = float(input("请输入a的值:"))
    b = float(input("请输入b的值:"))
    c = float(input("请输入c的值:"))
    x1=((-b+math.sqrt(b**2-4*a*c))/(2*a))
    x2=((-b-math.sqrt(b**2-4*a*c))/(2*a))
    print("x1=",x1,"\t","x2=",x2)
    

    对比发现实现相同功能的Java程序有近19行,而Python程序仅有7行,实在是简洁得多。

    运行结果如下图:
    在这里插入图片描述

    还可以对程序进行改进,使它能判断是否有根等,具体代码如下:

    import math
    a = float(input("请输入a的值:"))
    b = float(input("请输入b的值:"))
    c = float(input("请输入c的值:"))
    if a != 0:
        delta = b**2-4*a*c
        if delta < 0:
            print("无根")
        elif delta == 0:
            s = -b/(2*a)
            print("唯一根x=",s)
        else :
            root = math.sqrt(delta)
            x1 = (-b+root)/(2*a)
            x2 = (-b-root)/(2*a)
            print("x1=",x1,"\t","x2=",x2)
    

    即便是加入这些功能,Python代码也仅有16行,故可以发现它相比Java的简洁性,改程序读者可自行验证,我就不发运行截图了。


    3、总结

    通过本博客分享了Python制作的一元二次方程求根小程序,大家可以对比之前Java编写该程序的博客《使用Java实现一元二次方程求根计算器》,可以发现两种语言之间部分语法是相通的,这也为我们的学习提供了方便。

    展开全文
  • 配方法(直接开)形如x=p或(nx+m)=p(p≥0)的一元二次方程可采用直接开平方的方法解一元二次方程.如果方程化成x²=p的形式,那么可得x=±p;(x²=p,x=±根号p)如果方程能化成(nx+m)=p(p≥0)的形式,那么nx+m=±p....

    配方法

    (直接开)

    形如x=p或(nx+m)=p(p≥0)的一元二次方程可采用直接开平方的方法解一元二次方程.

    如果方程化成x²=p的形式,那么可得x=±p;(x²=p,x=±根号p)

    如果方程能化成(nx+m)=p(p≥0)的形式,那么nx+m=±p.(同上)

    注意:①等号左边是一个数的平方的形式而等号右边是一个非负数.

    ②降次的实质是由一个一元二次方程转化为两个一元一次方程.

    ③方法是根据平方根的意义开平方

    (配方法)

    (1)将一元二次方程配成(x+m)=n的形式,再利用直接开平方法求解,这种解一元二次方程的方法叫配方法.

    (2)用配方法解一元二次方程的步骤:

    ①把原方程化为ax²+bx+c=0(a≠0)的形式;

    ②方程两边同除以二次项系数,使二次项系数为1,并把常数项移到方程右边;

    ③方程两边同时加上一次项系数一半的平方;

    ④把左边配成一个完全平方式,右边化为一个常数;

    ⑤如果右边是非负数,就可以进一步通过直接开平方法来求出它的解,如果右边是一个负数,则判定此方程无实数解.

    配方法的应用:1、用配方法解一元二次方程.

    配方法的理论依据是公式a²±2ab+b²=(a±b)²

    配方法的关键是:先将一元二次方程的二次项系数化为1,然后在方程两边同时加上一次项系数一半的平方.

    2、利用配方法求二次三项式是一个完全平方式时所含字母系数的值.

    关键是:二次三项式是完全平方式,则常数项是一次项系数一半的平方.

    公式法

    1)把 德尔塔=b²-4ac 叫做一元二次方程ax²+bx+c=0(a≠0)的判别式.

    (2)用求根公式解一元二次方程的方法是公式法.

    (3)用公式法解一元二次方程的一般步骤为:

    ①把方程化成一般形式,进而确定a,b,c的值(注意符号);

    ②求出b²-4ac的值(若b²-4ac0 方程有两个不相等的实根,b²-4ac=0时方程有两个等根 );

    ③在b²-4ac≥0的前提下,把a、b、c的值代入公式进行计算求出方程的根.

    注意:用公式法解一元二次方程的前提条件有两个:①a≠0;②b²-4ac≥0.

    求根公式:

    利用一元二次方程根的判别式(△=b-4ac)判断方程的根的情况.

    一元二次方程ax²+bx+c=0(a≠0)的根与△=b²-4ac有如下关系:

    ①当△>0时,方程有两个不相等的两个实数根;

    ②当△=0时,方程有两个相等的两个实数根;

    ③当△0时,方程有两个不相等的两个实数根;

    ②当△=0时,方程有两个相等的两个实数根;

    ③当△<0时,方程无实数根.

    上面的结论反过来也成立.

    特殊解法

    开平方法,因式分解法(包括十字相乘法,双十字相乘法,拆项和添减项法等)

    因式分解法:

    (1)因式分解法解一元二次方程的意义

    因式分解法就是利用因式分解求出方程的解的方法,这种方法简便易用,是解一元二次方程最常用的方法.

    因式分解法就是先把方程的右边化为0,再把左边通过因式分解化为两个一次因式的积的形式,那么这两个因式的值就都有可能为0,这就能得到两个一元一次方程的解,这样也就把原方程进行了降次,把解一元二次方程转化为解一元一次方程的问题了(数学转化思想).

    (2)因式分解法解一元二次方程的一般步骤:

    ①移项,使方程的右边化为零;②将方程的左边分解为两个一次因式的乘积;③令每个因式分别为零,得到两个一元一次方程;④解这两个一元一次方程,它们的解就都是原方程的解.。

    全部

    展开全文
  • 本文实例讲述了Python编程实现数学运算求一元二次方程的实算法。分享给大家供大家参考,具体如下:问题:请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:ax² + bx + c = 0的两个解。实现代码...

    本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法。分享给大家供大家参考,具体如下:

    问题:

    请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:ax² + bx + c = 0的两个解。

    实现代码:

    ?

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    #!/usr/bin/env python

    # -*- coding: utf-8 -*-

    import math

    def quadratic(a,b,c):

    if a== 0:

    raise TypeError('a不能为0')

    if not isinstance(a,(int,float))or not isinstance(b,(int,float))or not isinstance(c,(int,float)):

    raise TypeError('Bad operand type')

    delta= math.pow(b,2)- 4*a*c

    if delta <0:

    return '无实根'

    x1= (math.sqrt(delta)-b)/(2*a)

    x2=-(math.sqrt(delta)+b)/(2*a)

    return x1,x2

    print(quadratic(2,3,1))

    print(quadratic(1,3,-4))

    运行效果图如下:

    1-20092P9295T47.jpg

    希望本文所述对大家Python程序设计有所帮助。

    展开全文
  • 对于简单的一元次方程的迭代#include #include #include #define MAXTIMES 5typedef int times;typedef double coefficient;typedef struct _properties{coefficient x; //系数times n;//次数}...
  • 一元二次方程求根

    2017-07-21 19:03:46
    #include //一元二次方程求根 #include int main() { int a,b,c; //定义系数 double der,g1,g2,g; //定义判断式 两个不等 一个相等 scanf("%d%d%d",&a,&b,&c); //输入系数 der=b*b-4*a*c; /...
  • VB 求一元二次方程 VB 求一元二次方程
  • 主要介绍了Python编程实现数学运算求一元二次方程的实算法,涉及Python数学运算求解方程的相关实现技巧,需要的朋友可以参考下
  • 数学基础:一元二次方程只含有一个未知数(一元),并且未知数项的最高次数是2(二次)的整式方程叫做一元二次方程。标准形式为:ax²+bx+c=0(a≠0)。求解公式:求根公式法用求根公式法解一元二次方程的一般步骤为:①把...
  • 试题 算法提高 编程求一元二次方程 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述  编写一个求解一元二次方程的实数的程序,方程的系数由用户在运行xh 输入格式  输入一行三个整数分别为一元二次方程...
  •  编写一个求解一元二次方程的实数的程序,方程的系数由用户在运行xh 输入格式  输入一行三个整数分别为一元二次方程的三个系数,数据之间以空格隔开 输出格式  输出一行为方程的实数(若两不同 较大的在前 ...
  • 求一元二次方程vb.net源代码 给出方程a,b,c三个系数,可方便出x1、x2两个解。
  • c语言求一元二次方程

    万次阅读 多人点赞 2016-11-15 20:42:08
    对于一个一元二次方程进行如下分析:  ax^2+bx+c=0 分析: 1. 当a = 0:  结论:不是一个一元二次方程; 2. 当a!=0:  结论:(1)当b^2-4ac=0,方程有两个相等的实,x1=x2=-b/2a;  (2)当b^2-4.....
  • 求一元二次方程

    千次阅读 2016-07-28 12:17:36
    求一元二次方程 总时间限制: 1000ms 内存限制: 65536kB 描述 利用公式x1 = (-b + sqrt(b*b-4*a*c))/(2*a), x2 = (-b - sqrt(b*b-4*a*c))/(2*a)求一元二次方程ax2+ bx + c =0的,其中a不等于0。输入 输入一...
  • 【蓝桥杯】试题 算法提高 编程求一元二次方程 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述  编写一个求解一元二次方程的实数的程序,方程的系数由用户在运行xh 输入格式  输入一行三个整数分别为...
  • 1040 例题4-1 一元二次方程求根

    千次阅读 2018-03-16 21:03:15
    题目描述求一元二次方程ax2+bx+c=0的,三个系数a, b, c由键盘输入,且a不能为0,但不保证b2-4ac&gt;0。程序中所涉及的变量均为double类型。输入以空格分隔的一元二次方程的三个系数,双精度double类型输出分行...
  •  编写一个求解一元二次方程的实数的程序,方程的系数由用户在运行xh 输入格式  输入一行三个整数分别为一元二次方程的三个系数,数据之间以空格隔开 输出格式  输出一行为方程的实数(若两不同 较大的在前 ...
  • 编写一个求解一元二次方程的实数的程序,方程的系数由用户在运行xh 输入格式 输入一行三个整数分别为一元二次方程的三个系数,数据之间以空格隔开 输出格式 输出一行为方程的实数(若两不同 较大的在前 两以...
  • C语言——PTA 求一元二次方程

    千次阅读 2020-11-02 19:41:56
    PTA 求一元二次方程
  •  编写一个求解一元二次方程的实数的程序,方程的系数由用户在运行xh 输入格式  输入一行三个整数分别为一元二次方程的三个系数,数据之间以空格隔开 输出格式  输出一行为方程的实数(若两不同 较大的在前 ...
  • #include<iostream> #include<cmath> using namespace std; int main() { float a,b,c,t,x1,x2; cin>>a>>b>>c; if(b*b-4*a*c<0) { cout<<"NO"<......
  • Java求一元二次方程

    千次阅读 2018-10-29 22:45:01
    求一元二次方程。 【问题描述】编写程序,从键盘输入三个系数ax2+bx+c=0,计算方程的解并输出。需要考虑方程有虚根、方程有实、方程是一元一次方程、没有等。输出方程的解并保留6位小数。 import java....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,356
精华内容 1,342
关键字:

一元二次方程求根编程