Java での平方根の計算は、ソフトウェア開発の面接ではそれほど一般的な質問ではありませんが、面接で次のような質問を受けることがあります 。平方根を計算する Java プログラムを作成します。」 このような基本的な質問に驚かれないように、Java で平方根を計算する方法を見てみましょう。
平方と平方根: 数学の概念を復習する
平方根と根を扱うときに混乱しないように、この概念の理論を確認してみましょう。数値の 2 乗は、その数値をそれ自体で乗算したものです。n = 4 の場合、n^2 = 4 4 = 16 です。数値の平方根は、それ自体を乗算すると、指定された値 X が得られる数値です。たとえば、n = の平方根を見つける必要があります。 16 を 2 乗すると 16 になる数を見つければ、問題は解けます。n の場合、数値 16 の平方根は 4 です (4 * 4 = 16 であるため)。java.lang.Math.sqrt() を使用して Java で平方根を計算する方法
Java で数値の平方根を求める最も一般的な方法は、java.lang.Math.sqrt()
メソッドを適用することです。java.lang.Math.sqrt() メソッドの一般的な構文は次のとおりです。
public static double sqrt(double a)
このメソッドでは、 a は平方根を取得する 2 乗した値です。開発者が を適用するとjava.lang.Math.sqrt()
、メソッドは a の正の平方根を返します (a が 0 より大きい場合)。負の引数の場合は、java.lang.Math.sqrt
NaN 出力を返します。
java.lang.Math.sqrt() が返す特殊なケース
前述したように、ほとんどの場合、メソッドは正の値を返します。ただし、ルート検索プログラムを作成するときに開発者が注意すべき特定のケースがいくつかあります。- NaN 値を持つ引数または負の引数の場合、メソッドは NaN の結果を返します。
- 引数が無限に正の場合、メソッドは無限に正の結果を返します。
- 正または負のゼロで構成される引数の場合、a の平方根は a に等しくなります。
java.lang.Math.sqrt()の使用例
package MyPackage;
public class SquareRoot2 {
public static void main(String args[])
{
double a = 100;
System.out.println(Math.sqrt(a));
// For positive values, the output is the square root of x
double b = -81.00;
System.out.println(Math.sqrt(b));
// For negative values as input, Output NaN
double c = 0.0/0;
// Input NaN, Output NaN
System.out.println(Math.sqrt(c));
double d = 1.0/0;
// For inputs containing positive infinity, Output positive infinity
System.out.println(Math.sqrt(d));
double e = 0.0;
// Input positive Zero, Output positive zero
System.out.println(Math.sqrt(e));
}
}
Java で平方根を求める練習問題
Java で平方根を計算するプログラムを作成する方法がわかったので、この概念がより高度な練習問題にどのように適合するかを見てみましょう。たとえば、面接官が二次方程式を解くように頼むとします。このような問題に対処する方法を見てみましょう。 問題: a = 1、b = 5、c = 2 の二次方程式を解きます 。import java.util.Scanner;
public class Exercise2 {
public static void main(String[] Strings) {
Scanner input = new Scanner(System.in);
System.out.print("Input a: ");
double a = input.nextDouble();
System.out.print("Input b: ");
double b = input.nextDouble();
System.out.print("Input c: ");
double c = input.nextDouble();
double result = b * b - 4.0 * a * c;
if (result > 0.0) {
double r1 = (-b + Math.pow(result, 0.5)) / (2.0 * a);
double r2 = (-b - Math.pow(result, 0.5)) / (2.0 * a);
System.out.println("The roots are " + r1 + " and " + r2);
} else if (result == 0.0) {
double r1 = -b / (2.0 * a);
System.out.println("The square root is " + r1);
} else {
System.out.println("There are no real square roots in the equation.");
}
}
}
結論
これは、Java で数値の平方根を求める方法について簡単にまとめたものです。ソフトウェア開発の初心者の場合、概念をしっかり理解するために、さまざまなシナリオ (a>0、a<0、a = 0) を練習することをお勧めします。java.lang.Math.sqrt メソッドの詳細を理解したら、二次方程式を解くなどのタスクを処理して、複雑なプログラムにメソッドを適用し始めます。
さらに読む: |
---|