解题思路:
1、使用求根公式,并对公式进行化简
2、分别讨论b²-4ac大于、小于、等于0的情况
3、当b²-4ac小于0时,由于无实数解,需要进行复数格式化(考虑用format进行输出)
注意事项:
需要注意输出格式,保留三位小数,中途不能取舍,如果中途取舍会对结果造成一定误差,只在最终结果进行取舍。
参考代码:
import math while True: try: a, b, c = map(int, input().strip().split()) dert = (b ** 2) - (4 * a * c) if dert > 0: x1 = math.sqrt(dert) / (2 * a) x2 = math.sqrt(dert) / (2 * a) print("x1={:.3f} x2={:.3f}".format((0 - b)+ x1, (0 - b)-x2)) if dert == 0: x1 = math.sqrt(dert) / (2 * a) print("x1={:.3f} x2={:.3f}".format((0 - b)+ x1, (0 - b)-x1)) if dert < 0: x1 = math.sqrt(0 - (((b ** 2) - (4 * a * c)) / (4 * a * a))) x2 = math.sqrt(0 - (((b ** 2) - (4 * a * c)) / (4 * a * a))) print("x1={:.3f}+{:.3f}i x2={:.3f}-{:.3f}i".format((0 - (b / (2 * a))), x1, (0 - (b / (2 * a))), x2)) except: break
0.0分
10 人评分
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:626 |
淘淘的名单 (C语言代码)浏览:997 |
【蟠桃记】 (C语言代码)浏览:969 |
时间转换 (C语言代码)浏览:584 |
C语言训练-8除不尽的数 (C语言代码)浏览:1312 |
最好的,浏览:534 |
1231题解(注意理解“输入多个测试实例”)浏览:734 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:476 |
10月月赛题解浏览:515 |
C语言程序设计教程(第三版)课后习题9.1 (C语言代码)浏览:495 |