008 メソッド (他のメソッドからのメソッド呼び出し)010 解答例

public class Calculator {
    // 加算のメソッド
    public int add(int num1, int num2) {
        return num1 + num2;
    }

    // 減算のメソッド
    public int subtract(int num1, int num2) {
        return num1 - num2;
    }

    // 乗算のメソッド
    public int multiply(int num1, int num2) {
        return num1 * num2;
    }

    // 除算のメソッド
    public double divide(double num1, double num2) {
        if (num2 != 0) {
            return num1 / num2;
        } else {
            // ゼロで割るエラーを避けるためにエラー値などを返すことが考えられます
            System.out.println("エラー: ゼロで割ることはできません。");
            return Double.NaN; // 例として NaN (Not a Number) を返します
        }
    }

    // 四つの基本的な計算を行うメソッド
    public void performCalculation(int num1, int num2) {
        // 二つの数値の和、差、積、商を計算して表示
        System.out.println("Sum: " + add(num1, num2));
        System.out.println("Difference: " + subtract(num1, num2));
        System.out.println("Product: " + multiply(num1, num2));
        System.out.println("Quotient: " + divide(num1, num2));
    }
}

この Calculator クラスには、addsubtractmultiplydivide の四つのメソッドがあります。また、これらのメソッドを使って二つの数値の和、差、積、商を計算する performCalculation メソッドも追加されています。このようにして、計算を行うためのクラスが完成します。

エラー処理

このコードはエラー処理が一部含まれています。

  1. ゼロでの割り算の処理:
    • divide メソッドでは、ゼロで割り算が行われる場合に備えてエラーチェックを行っています。
    • if (num2 != 0) という条件文で、num2 がゼロでないか確認しています。
    • もし num2 がゼロでなければ、通常の割り算を行います (num1 / num2)。
    • しかし、もし num2 がゼロである場合、エラーメッセージを表示して Double.NaN を返します。Double.NaN は数学的に有効な数ではありません (Not a Number) が、エラーを示すために使用されることがあります。
  2. エラーメッセージの表示:
    • ゼロで割るエラーが発生した場合、System.out.println("エラー: ゼロで割ることはできません。"); によってコンソールにエラーメッセージが表示されます。

このエラー処理の実装は基本的なものであり、実際のアプリケーションではさらに適切なエラーハンドリングや例外処理を追加することが望まれます。たとえば、エラーメッセージを表示するだけでなく、プログラムの実行を停止させるなどの対策が考えられます。

「008 メソッド」問題集リスト