python一元三次求根

0.前言

使用百度百科查带的卡丹公式和盛金公式编写程序,链接如下:

https://baike.baidu.com/item/%E4%B8%80%E5%85%83%E4%B8%89%E6%AC%A1%E6%96%B9%E7%A8%8B%E6%B1%82%E6%A0%B9%E5%85%AC%E5%BC%8F

1.准备

1.1 复数使用

在这个过程中,发现了复数的使用方法

temp = complex(-1.3173849932929516, 0.3582593599240431)
如果采用a+bj的方式写的话,遇到开根号的话会变得棘手。
w = -1/2 - math.sqrt(3)/2j

1.2 开根

在python中,开三次方的时候遇到了一个问题,如果开方的是负数的话,得到的解永远是复数,这就很麻烦了。问题原因见https://segmentfault.com/q/1010000003997125/a-1020000003997199。

后面进行对符号判断即可解决

2. 在线计算

http://www.99cankao.com/algebra/cubic-equation.php

猜你喜欢

转载自blog.csdn.net/qq_35546153/article/details/80808669