如何创建一个函数来解决两个未知数

Chr*_*isS 1 c# math

试图弄清楚从哪里开始.该等式包含两个未知数,x或y的解决方案始终为正数.

给定a = 123b = 55和c = 5.在这种情况下x = 31,y = 93但我不知道提前,我正在尝试用C#编写一个函数来解决它.

a - (x + 1) * 96 - (y + 2) + 3104 - c = b
Run Code Online (Sandbox Code Playgroud)

如果a = 30b = 8,然后c = 19那么x = 32y = 35

所以对于:第1轮函数solveX(123,55,5)返回31函数solveY(123,55,5)返回93

第2轮函数solveX(30,8,19)返回32函数solveY(30,8,19)返回35

关于从哪里开始的任何指示都会很棒.

谢谢.

jas*_*son 9

这是线性丢番图方程.它的解决方案非常有名.它可以在表单中重写ex + fy = d.找到g = gcd(e, f).如果d = g那时存在无限多的积分解,并且可以使用扩展的欧几里德算法找到这些解.因此,如果d仅仅是倍数g,那么也存在无限多的解决方案.如果d不是倍数g,则没有解决方案.