建立一个求一元二次方程解的类(a*x^2+b*x+c=0),输入系数a,b,c 的值后打印出 这个方程的解。输入第一行为样例数m,接下来m行每行3个整数a、b、c。输出m行,要求格式如下:若无解则输出-1,若有单解则输出x=..,若有两解则输出x1=...,x2=...
时间: 2023-06-15 16:06:06 浏览: 133
二次方程插值:假设您有一个二次方程 y=ax^2+bx+c。此脚本确定 a, b , c-matlab开发
以下是一个示例代码,可以求解一元二次方程的根:
```python
import math
class QuadraticEquation:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def solve(self):
delta = self.b**2 - 4*self.a*self.c
if delta < 0:
return -1
elif delta == 0:
x = -self.b / (2*self.a)
return "x={:.2f}".format(x)
else:
x1 = (-self.b + math.sqrt(delta)) / (2*self.a)
x2 = (-self.b - math.sqrt(delta)) / (2*self.a)
return "x1={:.2f},x2={:.2f}".format(x1, x2)
m = int(input())
for i in range(m):
a, b, c = map(int, input().split())
eq = QuadraticEquation(a, b, c)
print(eq.solve())
```
使用示例:
输入:
```
3
1 2 1
1 3 2
1 1 1
```
输出:
```
x=-1.00
x1=-1.00,x2=-2.00
-1
```
注意,我们使用了 math 库来计算平方根。同时,在输出解的时候,我们使用了格式化字符串来控制输出格式。
阅读全文