誰かがJavaでの(xモジュラス10)の出力を教えてもらえますか?xが1(両端を含む)から9(両端を含む)までの正の整数の場合?私はそれが何であるかを見るためにこのコードを書きましたが、何も得られませんでした:
for(int i=1;i<10;++i)
{
int y = (i%10);
System.out.println("y is:" + y);
}
誰かがJavaでの(xモジュラス10)の出力を教えてもらえますか?xが1(両端を含む)から9(両端を含む)までの正の整数の場合?私はそれが何であるかを見るためにこのコードを書きましたが、何も得られませんでした:
for(int i=1;i<10;++i)
{
int y = (i%10);
System.out.println("y is:" + y);
}
Javaコードをテストしたいが、開発環境にアクセスできない場合でも、ideone.comなどの公共サービスを使用できます。私はここであなたのためにそれをしました。あなたのプログラムは印刷します
y is:1
y is:2
y is:3
y is:4
y is:5
y is:6
y is:7
y is:8
y is:9
次の出力を行う必要があります。
y is:1
y is:2
y is:3
y is:4
y is:5
y is:6
y is:7
y is:8
y is:9
基本的にあなたが持っている場合 y % x
と。それ以外の場合、。0 <= y < x
y % x = x
y % x = y - ( y / x)
整数x
の場合、の結果はとの間のx % 10
整数(両方を含む)です。-9
9
JLSから:
二項%演算子は、暗黙の除算から残りのオペランドを生成すると言われています。左側のオペランドは被除数で、右側のオペランドは除数です。
CおよびC++では、剰余演算子は整数オペランドのみを受け入れますが、Javaプログラミング言語では、浮動小数点オペランドも受け入れます。
2進数値昇格(§5.6.2)後の整数であるオペランドの剰余演算は、(a / b)* b +(a%b)がaに等しくなるような結果値を生成します。
この同一性は、被除数がそのタイプの可能な最大の大きさの負の整数であり、除数が-1(余りは0)であるという特別な場合にも当てはまります。
この規則から、剰余演算の結果は、配当が負の場合にのみ負になり、配当が正の場合にのみ正になります。さらに、結果の大きさは常に除数の大きさよりも小さくなります。
X%10は、10を法としてxとして読み取られ、剰余演算x/10を返します。
つまり
例:
If x=11
Then x%10 =1
If x=1
Then x%10 = 1