栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python解决一元二次方程

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python解决一元二次方程

题目:求一元二次方程ax*x+b*x+c=0的解

从键盘输入a,b,c的值,分多种情况输出解。

  1. a等于0,b也等于0时,输出“方程无解”;
  2. a等于0,b不等于0时,输出“方程有1个解,x= ?”;?表示方程的解
  3. a不等于0时,计算判别式d=b*b-4*a*c的值:

若d小于0,输出“方程无实数解”;

若d等于0,解等于-b/2a,输出“方程有两个相同的解,x1=x2=?”;?表示方程的解

若d大于0,用求根公式 求两个解,并比较大小,使x1大于x2,输出“方程有两个实数解,          x1=?,x2=?”。?表示方程的解

代码如下:

a=float(input("请输入a"))

b=float(input("请输入b"))

c=float(input("请输入c"))

if a==0 and b==0:

   print("方程无解")

elif a==0 and b!=0:

    print("方程有一个解,x=",-c/b)

elif a!=0:

    d=b*b-4*a*c

    if d==0:

        print("方程有一个解,x1=x2=",-b/(2*a))

    elif d<0:

        print("方程无实数解")

    else:

        e=b*b-4*a*c

        x1=(-b+e**0.5)/(2*a)

        x2=(-b-e**0.5)/(2*a)

        if x1>x2:

             print("方程有两个实数解,x1=%.1f,x2=%.1f"%(x1,x2))

        else:

            print("方程有两个实数解,x1=%.1f,x2=%.1f"%(x2,x1))

这道题就很简单了就是对输入的a,b,c进行if操作去选择它们应该执行的操作。整体的思路就是只用到了选择语句最多就是选择里面再加上了一个选择,是一个比较简单的问题。这个特别适合初学者在掌握选择操作时学习,这个是很经典的选择操作的语句代码之一。

Tips:python里面开根号可以 变量**0.5当然仅限于变量是正数,这样就不用调用math库和sqrt函数了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/854046.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号