再帰関数の結果

「y>0 のとき F(x,y) = F(y,x mod y) 」と決められているということは、左辺を右辺の形に変換できるということです。すなわち、右辺の第1引数には左辺の第2引数(y)を与え、右辺の第2引数には x mod y を与えて計算すればよいわけです。 「2」は、この問題で求める条件又は導出結果と一致しません。 「5」は、この問題で求める条件又は導出結果と一致しません。 「7」は、この問題で求める条件又は導出結果と一致しません。

整数 x,yx, y (x>y0x > y \geqq 0) に対して,次のように定義された関数 F(x,y)F(x, y) がある。F(231,15)F(231, 15) の値は幾らか。ここで,xmodyx \bmod yxxyy で割った余りである。 F(x,y)={y(xmody=0 のとき)F(y,xmody)(xmody0 のとき)F(x, y) = \begin{cases} y & (x \bmod y = 0 \text{ のとき}) \\ F(y, x \bmod y) & (x \bmod y \ne 0 \text{ のとき}) \end{cases}

出典平成28年度 秋期 基本情報技術者試験 午前 問7
2
3
5
7