ITの基礎知識|ITパスポート・基本情報

【基数変換のアルゴリズム】の記事一覧

科目Bに共通する注意事項(表記ルールなど)については、下記のリンク先を参照してください。

基本情報技術者 令和6年公開問題 科目Bの注意事項


問題

次のプログラム中の空欄に入れる正しい答えを,解答群の中から選べ。

関数 convDecimal は,引数として与えられた,”0″ と “1” だけから成る 1 文字以上の文字列を,符号なしの 2 進数と解釈したときの整数値を返す。例えば,引数として “10010” を与えると 18 が返る。

関数 convDecimal が利用する関数 int は,引数で与えられた文字が “0” なら整数値 0 を返し,”1″ なら整数値 1 を返す。

[プログラム]

○整数型: convDecimal(文字列型: binary)
  整数型: i, length, result ← 0
  length ← binaryの文字数
  for (i を 1 から length まで 1 ずつ増やす)
    result ← [_空欄_]
  endfor
  return result

 

解答群

  • ア result + int(binary の (length − i + 1)文字目の文字)
  • イ result + int(binary の i文字目の文字)
  • ウ result × 2 + int(binary の (length − i + 1)文字目の文字)
  • エ result × 2 + int(binary の i文字目の文字)