Menu
Coddy logo textTech

剰余演算子

CoddyのJavaジャーニー「基礎」セクションの一部。レッスン 16/73。

剰余演算子 % は、割り算の余りを返します。Java では、シンプルな構文で使用します。

result = dividend % divisor;
  • dividend: 割られる数。
  • divisor: dividendを割る数。
  • result: 割り算の余り。

例:

result = 10 % 3;

ここでは、10を3で割ります。3は10に3回入り、余りは1です。したがって、resultは1になります。

被除数が除数より小さい場合はどうでしょうか?その場合、除数は0回入るため、余りは単に被除数そのものになります。たとえば、2 % 32と等しくなります。これは、3は2に0回入り、2が余るためです。

通常、数値が偶数か奇数かを確認するために剰余を使用します:

  • 数値が偶数の場合、2で割ると余りは0になります。
  • 数値が奇数の場合、2で割ると余りは1になります。

浮動小数点数(double)で剰余を使用すると、整数の場合と同様に機能しますが、小数の精度が維持されます。例:

double result = 5.5 % 2.0;
// result は 1.5 です

仕組みは次のとおりです。2.0 は 5.5 に2回(4.0)入るので、余りは 1.5 です(5.5 - 4.0 = 1.5)。

注: double の値は近似値として格納されるため、余りがわずかな誤差を含んで表示されることがあります。たとえば、5.2 % 2.01.2 ではなく 1.2000000000000002 と表示されます。これは通常の浮動小数点の動作であり、コードの間違いではありません。

別の例:

double result = 7.5 % 3.5;
// result は 0.5 です
challenge icon

チャレンジ

初心者

3つの変数 a (int)b (double)c (int) を、それぞれ値 92.611 で初期化するコードを書いてください。

その後、次の変数を初期化してください。

  • d (int)a2 に対する剰余を保持します 
  • e (int)a3 に対する剰余を保持します
  • f (double)b1.5 に対する剰余を保持します
  • g (double)b3.9 に対する剰余を保持します
  • h (int)c10 に対する剰余を保持します

result を確認し、異なる dividend と divisor が result にどのような影響を与えるか見てみましょう。

自分で試してみよう

public class Main {
    public static void main(String[] args) {
        // 以下にコードを書いてください
        
        
        // 以下の行は変更しないでください
        System.out.println("a = " + a);
        System.out.println("b = " + b);
        System.out.println("c = " + c);
        System.out.println("d = " + d);
        System.out.println("e = " + e);
        System.out.println("f = " + f);
        System.out.println("g = " + g);
        System.out.println("h = " + h);
    }
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Javaオンラインコンパイラ