%
Javaでモジュラスを含む式の未知数の値を取得したい
例えば:
x % 26 = y
y
どうやって手に入れることができるかという価値がある場合x
問題は、ゼロの解 ( の場合) または与えられた の方程式を満たすMath.abs(y) >= 26
無限の1個の値があることです。一般的な答えは次のとおりです。x
y
x = 26 * k + y
の任意の整数値に対してk
。好きなものを選ぶことができk
ます。2
1実際には、範囲は使用している整数値の範囲によって制限されます。x
とy
が値の場合、 とint
によって制限されInteger.MAX_VALUE
ますInteger.MIN_VALUE
。一方、それらがBigInteger
値である場合、範囲の制約はあまりありません。
2実際、Java では と の符号は同じx
でy
なければならないため、選択できる無限大の半分しかありません。:-)
x の値を取得することはできません。これがモジュラスの仕組みです。x = 26 * k + y (k は整数) がわかります。