📜  解决二次方程式的Python程序(1)

📅  最后修改于: 2023-12-03 14:57:24.267000             🧑  作者: Mango

Python程序:解决二次方程式

二次方程式是高中数学中的一个基础概念。与手算方法不同,我们可以使用Python解决这个问题。下面我们将介绍如何使用Python编写一个解决二次方程式的程序。

什么是二次方程式?

二次方程式是形如 $ax^2+bx+c=0$ 的方程,其中 $a,b,c$ 都是实数,$x$ 是未知变量。

公式推导

二次方程式的求解可以通过以下公式推导:

$ax^2+bx+c=0\x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}$

编写程序

根据公式推导,我们可以编写以下Python程序:

import cmath

a = float(input('请输入 a 的值:'))
b = float(input('请输入 b 的值:'))
c = float(input('请输入 c 的值:'))

# 计算
d = (b**2) - (4*a*c)
x1 = (-b - cmath.sqrt(d)) / (2*a)
x2 = (-b + cmath.sqrt(d)) / (2*a)

# 输出结果
print('x1={0}, x2={1}'.format(x1, x2))

输入 $a,b,c$ 的值,程序将计算出方程的两个解。尤其需要注意的是,我们使用了 cmath.sqrt() 而不是 math.sqrt(),因为后者不能处理负数的平方根。

测试

我们可以使用以下数据对程序进行测试:

$a=1,b=-5,c=6$ $x_1=3,x_2=2$

我们输入程序:

a = 1
b = -5
c = 6

d = (b**2) - (4*a*c)
x1 = (-b - cmath.sqrt(d)) / (2*a)
x2 = (-b + cmath.sqrt(d)) / (2*a)

print('x1={0}, x2={1}'.format(x1, x2))

运行程序,输出结果正确。这便是我们的程序的正确性的证明。

总结

以上是解决二次方程式的Python程序。我们通过编写程序,可以看到Python在处理数学运算上非常方便。在日常工作中,我们可以将程序部署到应用程序中,方便应用程序的数值计算。