一元二次方程解法的实现(Python)

请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:
ax2 + bx + c = 0 的两个解。
提示:计算平方根可以调用math.sqrt()函数
 
# -*- coding: utf-8 -*-
# ax2+bx+c.py
# @author   0yst3r
# @description   一元二次方程解法
# @created Wed Apr 10 2019 15:40:51 GMT+0800 (中国标准时间)
# @last-modified Fri Apr 12 2019 09:22:48 GMT+0800 (中国标准时间)
#
import math


def quadratic(a, b, c):
    if a == 0:
        if b == 0:
            if c == 0:
                print('方程有任意解')
            else:
                print('方程无解')
        else:
            x = -c / b
            print('方程有解:x=%.2f' % x)
    else:
        q = b * b - 4 * a * c
        if q > 0:
            x1 = (-b + math.sqrt(q)) / a / 2
            x2 = (-b - math.sqrt(q)) / a / 2
            print("一元二次方程的解为x1=%.2f,x2=%.2f" % (x1, x2))
            return ()
        elif q == 0:
            x1 = -b / a / 2
            x2 = x1
            print("一元二次方程的解相同,x1=x2=%.2f" % (x1))
            return x1, x2
        else:
            pass
            print("一元二次方程无解")
            return ()


print('input a,b,c :')
a = float(input('a:'))
b = float(input('b:'))
c = float(input('c:'))
q = quadratic(a, b, c)

  

 
运行结果:
 
 
 
 
 
 
 
 
 
 
 
 
 
 

转载于:https://www.cnblogs.com/0yst3r-2046/p/10684568.html

要在Python求解一元二次方程,可以使用以下代码实现: ```python import math def solve_quadratic_equation(a, b, c): if a == 0: return "不是二次方程" if b == 0: x = 0 if -c/a >= 0: return x, math.sqrt(-c/a) else: return "无实根" if c == 0: x1 = 0 x2 = -b/a return x1, x2 delta = b**2 - 4*a*c if delta < 0: return "无实根" elif delta == 0: x = -b / (2*a) return x else: x1 = (-b + math.sqrt(delta)) / (2*a) x2 = (-b - math.sqrt(delta)) / (2*a) return x1, x2 ``` 这段代码首先引入了math包,然后定义了一个solve_quadratic_equation函数来求解一元二次方程。函数先判断了输入的系数a、b、c是否符合二次方程的要求。然后根据判定的结果进行相应的计算,最后返回方程的解或者无解的提示。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [接一元二次方程的几种解法,用python代码实现](https://blog.csdn.net/xifenglie123321/article/details/131530182)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Python实现求解一元二次方程的方法示例](https://download.csdn.net/download/weixin_38655780/14912139)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值