酷代码 AI
菜单
服务商
DeepSeek字节豆包讯飞星火
更多选项

Python 实现:求解一元二次方程根,规避输入陷阱与精度难题

```python import math def solve_quadratic_equation(a, b, c): # 计算判别式 delta delta = b2 - 4*a*c # 如果判别式大于 0,有两个不同的实根 if delta > 0: root1 = (-b + math.sqrt(delta)) / (2*a) root2 = (-b - math.sqrt(delta)) / (2*a) print("实根情况: {:.2f}\n虚根情况: 无".format(root1)) print("实根情况: {:.2f}\n虚根情况: 无".format(root2)) # 如果判别式等于 0,有一个重根 elif delta == 0: root = -b / (2*a) print("实根情况: {:.2f}\n虚根情况: 无".format(root)) # 如果判别式小于 0,有两个共轭虚根 else: real_part = -b / (2*a) imaginary_part = math.sqrt(-delta) / (2*a) print("实根情况: {:.2f}\n虚根情况: {:.2f}".format(real_part, imaginary_part)) print("实根情况: {:.2f}\n虚根情况: -{:.2f}".format(real_part, imaginary_part)) # 请输入 a、b、c 的值 a = float(input("请输入 a 的值: ")) b = float(input("请输入 b 的值: ")) c = float(input("请输入 c 的值: ")) solve_quadratic_equation(a, b, c) ``` 额外需要注意的逻辑点: 1. 输入的 a 不能为 0,否则不是一元二次方程。 2. 计算过程中要注意数值精度的问题。 3. 对于虚根的输出格式,要确保清晰明了,符合要求。 ######[AI写代码神器 | 451点数解答 | 2024-12-09 19:53:18]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]