请问可以用 Python 解方程式吗?

2018-04-17 12:31:35 +08:00
 lukeshawn
请定义一个函数 quadratic(a, b, c),接收 3 个参数,返回一元二次方程:

ax2 + bx + c = 0

的两个解。

这是让我们求 X 的解的意思吗

这个要怎么写,求解
6220 次点击
所在节点    Python
37 条回复
anyclue
2018-04-17 14:31:49 +08:00
这是楼主看到廖雪峰 Python 教程里定义函数那一节最后的练习题问的,那边评论里都是答案,不懂可以搜索……
按那个教程看到那里,那个练习题对新手来说,确实问的有点懵……
楼上的人也都挺有意思的……
est
2018-04-17 14:35:02 +08:00
@anyclue 这个 66666。
Joshua999
2018-04-17 14:45:32 +08:00
有没有解一元 n 次的包
goreliu
2018-04-17 14:48:59 +08:00
@Joshua999 用 sympy 可以,常见的方程式都能解。
DevRoss
2018-04-17 14:49:54 +08:00
线性代数了解一下
zst
2018-04-17 16:06:57 +08:00
sympy 吧....不过感觉开个 MATLAB 或者 Mathematica 更方便😂
virusdefender
2018-04-17 16:08:15 +08:00
z3 也不错
wcsjtu
2018-04-17 16:29:27 +08:00
这个不是有解析解么,直接代公式啊,o(1)的复杂度。。。。
没有解析解的上牛顿迭代法啊,微分方程上龙格库塔啊,pde 的话,就当我没说。。。。。
bwangel
2018-04-17 16:41:08 +08:00
jerry033
2018-04-17 17:42:02 +08:00
@locktionc 先做个判断,if b ** 2 - 4 * a * c > 0
locktionc
2018-04-17 17:59:01 +08:00
@jerry033 是的。
Len1133
2018-04-17 18:15:29 +08:00
数值计算了解一下,用任何语言解方程
goreliu
2018-04-17 18:21:16 +08:00
@bwangel 这个应该只能解一次方程。
guoli100
2018-04-18 05:06:58 +08:00
这个用 sympy 应该很方便吧。

一元二次方程不是有标准的求根公式吗?
x = (-b ∓ √(b^2 - 4ac)) / 2a

且可以通过根的判别式∆ = b^2 -4ac 来判断方程有几个解,∆ > 0 有两个解,∆ = 0 有一个解,∆ < 0 无解。

为什么楼上讲的都好复杂?
ZoomQuiet
2018-04-18 08:30:35 +08:00
@dacapoday 是也乎 ╮(╯▽╰)╭

py 一样可调 wolframe 的~
lukeshawn
2018-04-18 11:31:39 +08:00
@anyclue 我看到上面的回复更是一脸懵逼
lukeshawn
2018-04-18 11:59:28 +08:00
我不明白廖雪锋的问题是什么,它是要我们求解 X 吗?我试了下评论里面的答案,没有一个是对的啊
@anyclue

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/447455

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX