科目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文字目の文字)