アルゴリズムとプログラミング

基本情報技術者試験文字列処理」の問題

アルゴリズムとプログラミングアルゴリズムとプログラミング計算問題難易度:normal
数字文字('0'〜'9')だけからなる文字型の配列 s を整数値に変換する次の手続に、s = {'2','0','5','3'}(要素数 4、添字は 1 から)を与えて実行したとき、戻り値はどれか。digit(c) は文字 c に対応する数値('0'→0, …, '9'→9)を返す関数とする。
○整数型: parseInt(文字型の配列: s)
  整数型: v ← 0
  整数型: i
  for (i を 1 から sの要素数 まで 1 ずつ増やす)
    v ← v × 10 + digit(s[i])
  endfor
  return v
3502
2053
10 進数
253
正解
2053

先頭桁から v×10+digit を繰り返すと位取りが正しく組み上がる。2, 20, 205, 2053 と進み最終的に 2053 となるため イが正しい。

?選択肢ごとの解説

ア ×桁を逆順に組み立て 3502 とした、末尾から処理したと誤認した順序の誤りである。
イ ○先頭桁から v×10+digit を繰り返すと位取りが正しく組み上がる。2, 20, 205, 2053 と進み最終的に 2053 となるため イが正しい。
ウ ×具体的な数値ではなく『10 進数』という分類名を答えた、戻り値の型と値を取り違えた不適切な選択である。
エ ×途中の桁 '0' を読み飛ばして 2,5,3 だけを連結し 253 とした、ゼロの桁を落とした誤りである。
この問題の「深掘り・誤答の完全解説・試験のコツ・覚え方」はアプリで。

基本情報技術者試験の全問を、一問ごとにAIの8-ways解説つきで。SRS暗記カード・全真模試・弱点診断まで。まずは無料で。

無料ではじめる →

作成・校閲:ukamiru編集部 · 基本情報技術者試験 過去問 · fe-b-algo-0088

【基本情報技術者試験】文字列処理の問題と解答・解説|ukamiru 過去問