如何用python解多元方程,且未知数数量大于方程数(答案有多组解)(且要用到Python的numpy库或其他库)
备注:不要用循环解法!
例:
5x+3y+1/3z=100
x+y+z=100
(x,y,z为整数,且xyz均小于100)
求解满足条件的x,y,z(需要解出具体的值)
还有就是,这个为什么不对:
from sympy import symbols,Eq,solve
x,y,z=symbols('x,y,z')
eq1=Eq((5x+3y+(1/3)*z),100)
eq2=Eq((x+y+z),100)
print(solve((eq1,eq2),(x,y,z)).split())
可以用sympy 求解
from sympy import *
x = Symbol('x')
y = Symbol('y')
z = Symbol('z')
print(solve([5x+3y+(1/3)*z-100, x+y+z-100], [x,y,z]))
只要x能被4整除,代入都是整数解,有无穷个。
代码如下 有帮助的话记得点击一下采纳谢谢
import sympy as sp
x, y, z = sp.symbols('x, y, z')
eq1 = sp.Eq(5*x + 3*y + z/3, 100) # 5x+3y+1/3z=100
eq2 = sp.Eq(x + y + z, 100) # x + y + z = 100
ans = sp.solve((eq1, eq2), (x, y, z))
print(ans)
可以参考
https://blog.csdn.net/qq_41854911/article/details/125630630