Java
 Computer >> コンピューター >  >> プログラミング >> Java

【Java】数値の累乗を計算するプログラムの書き方をわかりやすく解説

本記事では、Javaを使って数値の累乗(べき乗)を計算する方法を解説します。累乗の計算は、ループ処理を用いて元の数値を指数の回数分だけ繰り返し掛け合わせることで求められます。

以下に具体的な例を示します。

入力

入力値が次のとおりであるとします。

数値 : 4
指数値 : 5

出力

期待される出力は、45 の計算結果である次の値です。

計算結果は 1024 です

アルゴリズム

ステップ1 - 処理を開始する
ステップ2 - 整数型の変数 my_input と my_exponent を宣言する
ステップ3 - ユーザーから必要な値を読み込む、または値をあらかじめ定義する
ステップ4 - whileループを使用し、入力値を指数値(n)の回数だけ自分自身に掛け合わせて結果を保存する
ステップ5 - 計算結果を表示する
ステップ6 - 処理を終了する

例1:ユーザーから入力を受け取る場合

この例では、プロンプトに対してユーザーが値を入力します。オンラインコンパイラなどのツールを使えば、実際にブラウザ上で動作を確認できます。【Java】数値の累乗を計算するプログラムの書き方をわかりやすく解説

import java.util.Scanner;
public class Exponents {
   public static void main(String[] args) {
      int my_input , my_exponent;
      System.out.println("必要なパッケージがインポートされました");
      Scanner my_scanner = new Scanner(System.in);
      System.out.println("リーダーオブジェクトが定義されました");
      System.out.print("数値を入力してください : ");
      my_input = my_scanner.nextInt();
      System.out.print("指数値を入力してください : ");
      my_exponent = my_scanner.nextInt();
      long my_result;
      my_result = 1;
      while (my_exponent != 0) {
         my_result *= my_input;
         --my_exponent;
      }
      System.out.println("計算結果は = " + my_result);
   }
}

出力

必要なパッケージがインポートされました
リーダーオブジェクトが定義されました
数値を入力してください : 4
指数値を入力してください : 5
計算結果は = 1024

例2:値を事前に定義する場合

この例では、整数値があらかじめコード内で定義されており、その値を読み取ってコンソールに表示します。

public class Exponents {
   public static void main(String[] args) {
      int my_input , my_exponent;
      my_input = 4;
      my_exponent = 5;
      System.out.println("数値は " +my_input +" 、指数は " + my_exponent + " と定義されています");
      long my_result;
      my_result = 1;
      while (my_exponent != 0) {
         my_result *= my_input;
         --my_exponent;
      }
      System.out.println("計算結果は = " + my_result);
   }
}

出力

数値は 4 、指数は 5 と定義されています
計算結果は = 1024

補足:Math.pow() メソッドを使う方法

上記のようなループ処理を実装しなくても、Java標準ライブラリの Math.pow() メソッドを使えば、1行で累乗を計算できます。引数には底と指数をdouble型で渡し、戻り値もdouble型として返されます。

public class PowerDemo {
   public static void main(String[] args) {
      double result = Math.pow(4, 5);
      System.out.println("計算結果は = " + (int) result);
   }
}

また、サンプルコードで結果を格納する変数に long型 を使用している点にも注目してください。int型のままだと大きな指数を扱った際にオーバーフローが発生する可能性があるため、より大きな範囲の値を扱えるlong型を選択することで、計算の安全性が高まります。

  1. 複利を計算するJavaプログラム

    この記事では、Javaを使って複利を計算するプログラムを紹介します。複利とは、元本だけでなく発生した利息に対してもさらに利息がつく計算方式のことで、次の数式で求められます。複利 = 元本 × (1 + 年利率 ÷ 100)期間サンプルコードimport java.io.*; public class Demo{ public static void main(String args[]){ double princ = 456000, rt = 9.75, tm = 7; double comp_int = princ * (Math.pow((1 +

  2. Javaでカウンタープログラムを実装する方法をわかりやすく解説

    この記事では、JavaのSwingを使ってシンプルなカウンター(数を数える)アプリケーションを実装する方法を解説します。このプログラムでは、JLabelでカウント用のラベルを表示し、JTextFieldで現在のカウント値を保持し、JButtonで「追加(Add)」「削除(Remove)」「リセット(Reset)」の3つのボタンを作成します。 「Add」ボタンをクリックするとJTextField内のカウントが1ずつ増加し、「Remove」ボタンをクリックすると1ずつ減少します。さらに「Reset」ボタンをクリックすると、カウントは0にリセットされます。 実装例 import java.awt.*