シカクマナボ.ITパスポート

ITパスポート 令和6年度 問85

出典:IPA「ITパスポート試験」令和6年度 問85

関数 binaryToInteger は,1桁以上の符号なし2進数を文字列で表した値を引数 binaryStr で受け取り,その値を整数に変換した結果を戻り値とする。例えば,引数として"100"を受け取ると,4を返す。プログラム中のa,bに入れる字句の適切な組合せはどれか。

〔プログラム〕
85_1.png/image-size:517×273
  • 85_2.png/image-size:505×154
            

正解と解説を見る

正解:エ

右端からi番目の2進数の重みは2の(i-1)乗です。各桁の値と重みを掛け、累計integerNumに加えるので、a=2の(i-1)乗、b=integerNum+digitNum×exponentです。

例えば100は右から0×1+0×2+1×4=4になります。累計への乗算では初期値0のままになってしまうので、加算を選びます。

条件を選んで演習する