解决具有多个变量的一阶方程的最佳方法

时间:2017-07-19 11:29:18

标签: algorithm diophantine

我想解决具有多个变量(不是方程组)的一阶方程,如:

  

10x + 5y + 7z = 630

有没有办法在不使用暴力的情况下解决它?

解决方案必须是整数。

2 个答案:

答案 0 :(得分:1)

将前两个术语重新组合为10x + 5y = 5(2x + y)= 5t。

然后t / 7 + z / 5 = 18。

由于5和7是相对素数,t = 7k和z = 5(18-k),其中k是有用的。

最后,y = t - 2x = 7k - 2x,其中x是任意的。

我们可以查看,

10 x + 5(7k - 2x)+ 7 5(18-k)= 630。

答案 1 :(得分:-1)

不,你不能,在这种情况下,你有无限的解决方案。

要解决这个问题,你应该拥有一个至少与变量数量具有相同方程数的系统。

另一个技巧,在某些情况下,你可以将其解决为一个未确定的系统。