新らしくなった基本情報 科目 B 20問バージョン アルゴリズムとプログラミング サンプル問題5をJavaにしてみました
2023 年 4 月からIPA (独立行政法人情報処理推進機構)の基本情報技術者試験の制度が変更されました。
ここでは、「基本情報技術者試験 科目 B のサンプル問題20問バージョン」の中から、アルゴリズムとプログラミングの問題を取り上げ、Javaのソースコードを示します。
新人エンジニア研修に参加されている皆様の参考になれば幸いです。
【Javaプログラム】
public class Q7 {
//本問で問われている関数
static int factorial(int n) {
if (n == 0) {
return 1;
}
return n * factorial(n - 1);
}
public static void main(String[] args) {
int ans = factorial(10);
System.out.println(ans);
}
}
【結果】
5.0 7.810249675906654 |
【プログラムの解説】
このプログラムは、三平方の定理を用いて直角三角形の斜辺の長さを計算するための関数 calc
を定義しています。
calc
メソッドは、2つの引数 x
と y
を取り、 Math.pow
メソッドを使用して、 x
の2乗と y
の2乗の和を求め、その平方根を計算することにより、直角三角形の斜辺の長さが求められます。
pow
メソッドは、 Math.pow
メソッドを呼び出すだけの単純なメソッドです。
メインメソッドでは、2つの直角三角形の斜辺の長さを計算して、結果を出力しています。
このプログラムは、数学的な計算を行うために Math.pow
メソッドを使用していますが、それ以外には高度な数学的な処理は行っていません。直角三角形の斜辺の長さを計算する際には、三平方の定理を用いることができます。
main()
メソッドでは、いくつかの引数を calc()
関数に渡して、計算結果を出力しています。例えば、(3, 4)
の場合は 5.0
、(5, 6)
の場合は 7.810249675906654
という結果が表示されます。