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]
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)496
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)380
- Java 实现计算所需最少钱币张数和个数(字节豆包 | 590点数解答 | 2026-03-05 21:44:59)28
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)449
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)441
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)350
- Java调用Python接口中文乱码?设置UTF - 8编码一招解决!(讯飞星火 | 263点数解答 | 2024-06-06 17:07:59)420
- 解决Java调用Python接口中文乱码问题:设置UTF - 8编码全攻略(讯飞星火 | 160点数解答 | 2024-06-06 17:18:39)443
- Java调用Python接口中文乱码问题:字符编码统一解决方案(讯飞星火 | 344点数解答 | 2024-06-06 17:19:55)550
- 解决Java调用Python接口时中文值乱码问题:设置字符编码为UTF-8(讯飞星火 | 264点数解答 | 2024-06-06 17:27:09)416
- 医院系统:信息添加、查询与修改操作全流程展示( | 31点数解答 | 2024-05-22 11:20:34)520
- 超详细!Java使用ProcessBuilder调用Python脚本实现PPT转图片(讯飞星火 | 295点数解答 | 2024-06-06 17:07:15)337