我们如何用python找到这个方程的答案?



你好,我对Python的数学方面有点陌生,我正在尝试解决一个方程,它是:

a * (10**(n-1)) + x = y*x

,其中y和n是已知的,我们需要找到x和a。现在我已经尝试了一些东西,它返回一个方程给我,而不是值:

from sympy.solvers import solve
from sympy import symbols, Eq
def remove_first_digit(n, y):
a, x = symbols("a,x", integer=True)
equation = Eq((10 ** (n-1)), ((y-1)*x)/a)
return solve(equation, (x,a))
print(remove_first_digit(2, 7))

我期望值'a' = 3和'x' = 5。我哪里做错了?

答案是x = 5a/3或a = 3x/5,任何满足这个的数字组合都可以工作,不仅仅是3和5,你的程序工作得很完美。如果你想让a = 3和x = 5,你需要做进一步的操作来减少可能的答案。

最新更新