Java である数が別の数で割り切れるかどうかをチェックする方法

JavaJavaBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Java である数が別の数で割り切れるかどうかをチェックする方法を学びます。割り算の余りがゼロであるかどうかを確認することで、割り切れるかどうかを判断するために剰余演算子 (%) の使用を調べます。

異なる数と除数で剰余演算子を使用する練習を行い、また、Java プログラムでエラーを防ぐためにゼロで割るという特殊なケースを処理する方法も学びます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java/BasicSyntaxGroup -.-> java/operators("Operators") java/BasicSyntaxGroup -.-> java/variables("Variables") java/BasicSyntaxGroup -.-> java/if_else("If...Else") java/BasicSyntaxGroup -.-> java/output("Output") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/exceptions("Exceptions") subgraph Lab Skills java/operators -.-> lab-559961{{"Java である数が別の数で割り切れるかどうかをチェックする方法"}} java/variables -.-> lab-559961{{"Java である数が別の数で割り切れるかどうかをチェックする方法"}} java/if_else -.-> lab-559961{{"Java である数が別の数で割り切れるかどうかをチェックする方法"}} java/output -.-> lab-559961{{"Java である数が別の数で割り切れるかどうかをチェックする方法"}} java/exceptions -.-> lab-559961{{"Java である数が別の数で割り切れるかどうかをチェックする方法"}} end

割り切れるかどうかを確認するために剰余演算子を使用する

このステップでは、Java で剰余演算子 (%) を使用して割り切れるかどうかを確認する方法を調べます。剰余演算子は割り算の余りを返します。割り算の余りが 0 の場合、その数は除数で完全に割り切れることを意味します。

これを実証するために、新しい Java プログラムを作成しましょう。

  1. 左側のファイルエクスプローラーで ~/project ディレクトリを開きます。

  2. ~/project ディレクトリ内の空白部分を右クリックし、「新しいファイル」を選択します。

  3. 新しいファイルの名前を DivisibilityCheck.java にします。

  4. コードエディターで DivisibilityCheck.java ファイルを開きます。

  5. 次のコードをエディターにコピーして貼り付けます。

    public class DivisibilityCheck {
        public static void main(String[] args) {
            int number = 10;
            int divisor = 2;
    
            // Use the modulo operator to check for divisibility
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }
    
            number = 11;
            divisor = 3;
    
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }
        }
    }

    新しい部分を見てみましょう。

    • int number = 10;: これは number という名前の整数型変数を宣言し、それに値 10 を代入します。
    • int divisor = 2;: これは divisor という名前の整数型変数を宣言し、それに値 2 を代入します。
    • number % divisor: これは剰余演算です。numberdivisor で割ったときの余りを計算します。
    • if (number % divisor == 0): これは if 文です。剰余演算の結果が 0 と等しいかどうかをチェックします。もし等しければ、if ブロック内のコードが実行されます。
    • else: if 文の条件が偽の場合(余りが 0 でない場合)、else ブロック内のコードが実行されます。
  6. ファイルを保存します(Ctrl+S または Cmd+S)。

  7. WebIDE の下部にあるターミナルを開きます。~/project ディレクトリにいることを確認します。もしそうでなければ、cd ~/project と入力して Enter キーを押します。

  8. 次のコマンドを入力して Enter キーを押し、Java プログラムをコンパイルします。

    javac DivisibilityCheck.java

    エラーがなければ、何も出力は表示されません。~/project ディレクトリに DivisibilityCheck.class ファイルが作成されます。

  9. 次のコマンドを入力して Enter キーを押し、コンパイルされた Java プログラムを実行します。

    java DivisibilityCheck

    次の出力が表示されるはずです。

    10 is divisible by 2
    11 is not divisible by 3

この出力は、私たちのプログラムが剰余演算子を正しく使用して割り切れるかどうかを確認したことを確認します。

異なる除数でテストする

前のステップでは、10 が 2 で割り切れるか、11 が 3 で割り切れるかを確認しました。では、プログラムを修正して、異なる数と除数でテストし、剰余演算子がどのように動作するかを見てみましょう。

  1. DivisibilityCheck.java ファイルがまだ開いていない場合は、WebIDE のエディターで開きます。

  2. main メソッドにいくつかの例を追加しましょう。main メソッドの閉じ括弧 } に次のコード行を追加します。

            System.out.println("\nTesting with different numbers:");
    
            number = 15;
            divisor = 5;
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }
    
            number = 20;
            divisor = 7;
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }
    
            number = 100;
            divisor = 10;
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }

    numberdivisor に異なる値を設定した 3 つの新しいチェックを追加しました。System.out.println("\nTesting with different numbers:"); の行は、出力をわかりやすくするために空行と見出しを追加するだけです。

  3. 修正した DivisibilityCheck.java ファイルを保存します(Ctrl+S または Cmd+S)。

  4. ターミナルを開き、~/project ディレクトリにいることを確認します。

  5. 更新された Java プログラムをコンパイルします。

    javac DivisibilityCheck.java

    再び、コンパイルが成功すると、何も出力が表示されません。

  6. コンパイルされたプログラムを実行して、新しいテストケースの結果を見ましょう。

    java DivisibilityCheck

    これで、前のステップの出力の後に、新しいテストケースの出力が表示されるはずです。

    10 is divisible by 2
    11 is not divisible by 3
    
    Testing with different numbers:
    15 is divisible by 5
    20 is not divisible by 7
    100 is divisible by 10

これらのテストケースを追加することで、剰余演算子がある数が別の数で完全に割り切れるかどうかを正しく識別する方法がわかります。これは、偶数または奇数のチェックや、定期的な間隔でアクションを実行するなど、多くのプログラミングタスクで使用される基本的な概念です。

ゼロ除算の処理

数学では、ゼロ除算は定義されていません。プログラミングにおいて、ゼロで割る(または除数としてゼロを使用して剰余演算を行う)試みは、通常エラーを引き起こします。プログラムがクラッシュするのを防ぐために、この状況をコードで処理することは重要です。

DivisibilityCheck.java プログラムを修正して、ゼロ除算のチェックを追加しましょう。

  1. WebIDE のエディターで DivisibilityCheck.java ファイルを開きます。

  2. 除数が 0 の新しいテストケースを追加します。main メソッドの閉じ括弧 } に次のコードを追加します。

            System.out.println("\nTesting division by zero:");
    
            number = 10;
            divisor = 0;
    
            if (divisor == 0) {
                System.out.println("Error: Division by zero is not allowed.");
            } else if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }

    追加した部分は次の通りです。

    • if (divisor == 0): これは新しい if 文で、divisor 変数が 0 と等しいかどうかをチェックします。
    • System.out.println("Error: Division by zero is not allowed.");: 除数が 0 の場合、この行はエラーメッセージを出力します。
    • else if (number % divisor == 0): これは else if 文です。最初の if 条件 (divisor == 0) が偽の場合にのみチェックされます。ここでは、除数がゼロでない場合にのみ剰余チェックを行います。
  3. 修正した DivisibilityCheck.java ファイルを保存します。

  4. ターミナルを開き、~/project ディレクトリにいることを確認します。

  5. 更新された Java プログラムをコンパイルします。

    javac DivisibilityCheck.java
  6. コンパイルされたプログラムを実行します。

    java DivisibilityCheck

    前のステップの出力の後に、ゼロ除算のテストケースの出力が表示されるはずです。

    10 is divisible by 2
    11 is not divisible by 3
    
    Testing with different numbers:
    15 is divisible by 5
    20 is not divisible by 7
    100 is divisible by 10
    
    Testing division by zero:
    Error: Division by zero is not allowed.

if (divisor == 0) のチェックを追加することで、除数がゼロの場合の潜在的なエラーを防ぎ、プログラムをより堅牢にしました。これは信頼性の高いコードを書く上で重要な側面です。

まとめ

この実験では、Java で剰余演算子 (%) を使用してある数が別の数で割り切れるかどうかをチェックする方法を学びました。Java プログラム DivisibilityCheck.java を作成し、if 文を使用して除算の余り (number % divisor) が 0 と等しいかどうかをチェックしました。余りが 0 の場合、その数は除数で割り切れます。割り切れる場合と割り切れない場合の例を用いてこれを実証しました。