関数 binaryToInteger は,1桁以上の符号なし2進数を文字列で表した値を引数 binaryStr で受け取…
テクノロジ系 問85
関数 binaryToInteger は,1桁以上の符号なし2進数を文字列で表した値を引数 binaryStr で受け取り,その値を整数に変換した結果を戻り値とする。例えば,引数として“100”を受け取ると,4を返す。プログラム中の a,b に入れる字句の適切な組合せはどれか。
正答 エ
正答は エ。a は 2 の(i - 1)乗、b は integerNum + digitNum × exponent です。
2進数は、末尾(右端)の桁から順に 1、2、4、8…(2の0乗、1乗、2乗、3乗…)の重みをもちます。末尾から i 番目の桁の重みは2 の(i - 1)乗なので、a に入ります。各桁の値(0 か 1)に重みを掛けて足し合わせると10進数の値になるので、b は「integerNum + digitNum × exponent」です。
【"100" でのトレース(エの場合)】
解説の続きをみる続きを閉じる
開始 integerNum = 0
i=1 末尾から1番目 "0" exponent = 2の0乗 = 1
integerNum = 0 + 0 × 1 = 0
i=2 末尾から2番目 "0" exponent = 2の1乗 = 2
integerNum = 0 + 0 × 2 = 0
i=3 末尾から3番目 "1" exponent = 2の2乗 = 4
integerNum = 0 + 1 × 4 = 4
戻り値 4(問題文の例と一致)
【ほかの選択肢】
ア a が(2 の i 乗)- 1、b が掛け算 誤り
integerNum は 0 から始まるので、掛け算では常に 0 になります。
イ a が(2 の i 乗)- 1 誤り
重みが 1、3、7 となり、"100" は 7 になってしまいます。
ウ b が掛け算 誤り
integerNum が 0 のままで、戻り値は常に 0 です。
出典:令和6年度 ITパスポート試験 公開問題 問85(独立行政法人情報処理推進機構)出典元ページ
最終更新日
「テクノロジ系」のほかの問題
- 2026年度(令和8年度)公開問題 問95SQL インジェクションの対策などで用いられ,処理の誤動作を招かないように,利用者が W
- 2025年度(令和7年度)公開問題 問65DBMS において,データの検索を高速に行う目的で,必要に応じて設定して利用する情報はど
- 2025年度(令和7年度)公開問題 問80AI において,広範囲かつ大量のデータで訓練されたものであり,ファインチューニングなどに
- 2025年度(令和7年度)公開問題 問95データベース設計におけるデータ分析で行うこととして,適切なものはどれか。
- 2026年度(令和8年度)公開問題 問65DNS サーバの役割に関する記述として,適切なものはどれか。
- 2026年度(令和8年度)公開問題 問80バイオメトリクス認証に関する次の記述中の a,b に入れる字句の適切な組合せはどれか。
スポンサーリンク





