サンプル問題 科目B 問5

問題

次のプログラム中の [ ] に入れる正しい答えを,解答群の中から選べ。 
 
関数 calc は,正の実数 x と y を受け取り,√(x^2+y^2) の計算結果を返す。関数 calcが使う関数 pow は,第 1 引数として正の実数 a を,第 2 引数として実数 b を受け取り,a の b 乗の値を実数型で返す。 
 
〔プログラム〕 
○実数型: calc(実数型: x, 実数型: y) 
  return [ ]
 
解答群 
ア  (pow(x, 2) + pow(y, 2)) ÷ pow(2, 0.5) 
イ  (pow(x, 2) + pow(y, 2)) ÷ pow(x, y) 
ウ  pow(2, pow(x, 0.5)) + pow(2, pow(y, 0.5)) 
エ  pow(pow(pow(2, x), y), 0.5) 
オ  pow(pow(x, 2) + pow(y, 2), 0.5) 
カ  pow(x, 2) × pow(y, 2) ÷ pow(x, y) 
キ  pow(x, y) ÷ pow(2, 0.5) 

出典:基本情報技術者試験 サンプル問題

平方根をどうやって計算するか

この問題は、xの2乗はpow関数を使って pow(x, 2) で計算できますが、平方根をどうやって計算するかがわかるかどうかですね。しかも、使えるのはpow関数だけのようです。

これは、知っている人にはごく簡単で、xの1/2乗 で√(x) が求まります。この解説は、例えばこういうところで解説されています。

kou.benesse.co.jp

回答

平方根の求め方が分かれば、(xの2乗+yの2乗)の1/2乗をpow関数を用いて計算している、オが答えです。