必ず受かる情報処理技術者試験

問題7

ポケットスタディ 基本情報午後・要点整理―即効!7つの知識 (情報処理技術者試験)

文字列を引数とする関数len、first、butfirstを用いて、関数compを再帰的に定義した。comp(“11",“101")を呼び出したとき、返されるものはどれか。

  [関数の定義]
  len(S) 文字列Sの長さを返す。Sが空文字列のときは0を返す。
  first(S) 文字列Sの先頭の1文字のASCIIコードを返す。
Sが空文字列のときはエラーを返す。
  butfirst(S) 文字列Sの先頭の1文字を除いた残りの文字列を返す。
Sが空文字列のときはエラーを返す。
comp(A,B)
begin
    if len(A)=0 and len(B)=0 then return 0;
    if len(A)=0 and len(B)≠0 then return 1;
    if len(A)≠0 and len(B)=0 then return -1;
    if first(A)<first(B) then return 1;
    if first(A)>first(B) then return -1;
    return comp(butfirst(A),butfirst(B))
end

解答・解説を見る

解答:ア

下図より、アが正解である。

前の問題 次の問題

Copyrithg naruha