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

Javaで2つの浮動小数点数(float)を乗算するプログラムの書き方

この記事では、Javaを使って2つの浮動小数点数(float型)を乗算する方法を解説します。浮動小数点数とは、小数点以下の値を持つ数値のことです。floatデータ型はIEEE 754に準拠した単精度32ビットの浮動小数点数で、大量の浮動小数点数を扱う配列などでメモリ使用量を抑えたい場合に主に利用されます。デフォルト値は0.0fです。ただし、通貨のように厳密な精度が求められる値にはfloat型は適していませんので注意しましょう。

入力と出力の例

まず、どのような処理を行うのかを具体的な例で確認します。

入力:

Value_1: 12.4f
Value_2: 15.7f

出力:

Result : 194.68f

アルゴリズム

乗算プログラムの処理手順は以下の通りです。

ステップ1: 処理を開始する
ステップ2: 3つのfloat型変数 input_1、input_2、product を宣言する
ステップ3: ユーザーに2つの浮動小数点数の入力を促す(または値を直接定義する)
ステップ4: 入力された値を読み込む
ステップ5: 乗算演算子(*)を使って2つの値を掛け合わせる
ステップ6: 計算結果を表示する
ステップ7: 処理を終了する

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

この例では、Scannerクラスを使ってユーザーからキーボード入力を受け付け、入力された2つの値を乗算します。オンラインの実行環境でもそのまま動作を確認できます。

import java.util.Scanner;
public class MultiplyFloatValues{
   public static void main(String[] args){
      float input_1, input_2, my_prod;
      Scanner my_scan = new Scanner(System.in);
      System.out.println("スキャナオブジェクトが定義されました");
      System.out.println("1つ目の浮動小数点数を入力してください:");
      input_1 = my_scan.nextFloat();
      System.out.println("2つ目の浮動小数点数を入力してください:");
      input_2 = my_scan.nextFloat();
      my_prod = input_1 * input_2;
      System.out.println("\n2つの値の積は:" + my_prod);
   }
}

実行結果:

スキャナオブジェクトが定義されました
1つ目の浮動小数点数を入力してください:12.4
2つ目の浮動小数点数を入力してください:15.7
2つの値の積は:194.68

例2:値があらかじめ定義されている場合

次の例では、浮動小数点数の値がソースコード内で事前に定義されており、その値を読み出してコンソールに表示します。入力処理が不要なため、動作確認がシンプルになります。

public class MultiplyFloatValues{
   public static void main(String[] args){
      float value_1, value_2, my_prod;
      value_1 = 12.4f;
      value_2 = 15.7f;
      System.out.printf("2つの数値は %.2f と %.2f です", value_1, value_2);
      my_prod = value_1 * value_2;
      System.out.println("\n2つの値の積は:" + my_prod);
   }
}

実行結果:

2つの数値は 12.40 と 15.70 です
2つの値の積は:194.68

ポイント解説

  • 接尾辞「f」を忘れない: Javaでは小数リテラルはデフォルトでdouble型として扱われるため、float型の変数に代入する場合は 12.4f のように「f」を付ける必要があります。
  • printfでの整形表示: %.2f を指定すると、小数第2位まで揃えた形式で表示でき、出力が読みやすくなります。
  • 精度に関する注意: float型の有効桁数は約6〜7桁です。より高い精度が必要な場合は double 型、金額計算など誤差が許容できない場面では BigDecimal クラスの使用を検討しましょう。

  1. 2つの配列の間で条件を満たす値の個数を求めるPythonプログラム

    問題の概要 2つの整数配列 nums1 と nums2 が与えられたとき、次の2つの条件を同時に満たす値が何個存在するかを求めます。 選んだ値は、nums1 のすべての要素の倍数である(つまり nums1 の各要素はその値の約数になる) 選んだ値は、nums2 のすべての要素の約数である 例として、nums1 = [3, 9]、nums2 = [27, 81] が入力された場合を考えます。このとき出力は 2 になります。条件を満たすのは 9 と 27 の2つの値だからです。 9 mod 3 = 0 / 9 mod 9 = 0 → 9 は nums1 の全要素で割り切れる 27 mod

  2. Pythonで2つの行列を乗算する方法を徹底解説

    この記事では、次の問題に対する解決策を詳しく解説します。 問題文: 2つの行列が与えられたとき、それらを乗算し、その結果を出力します。 2つの行列の乗算が成立するためには、1つ目の行列の列数が2つ目の行列の行数と一致している必要があります。この条件が満たされている場合にのみ、乗算の計算を実行できます。 例えば、Aが m×n の行列、Bが n×p の行列であるとき、積 A×B は m×p の行列になります。それでは、具体的な実装方法を見ていきましょう。 アプローチ1:総当たり(ブルートフォース)法 最も基本的な方法は、三重のforループを使って各要素を順番に計算する方法です。外側のループで行を