基礎理論
基本情報技術者試験 科目A免除 修了試験 20180128 実施分 問4
表は,文字列を検査するための状態遷移表である。検査では,初期状態を a とし,文字列の検査中に状態が e になれば不合格とする。
解答群で示される文字列のうち,不合格となるものはどれか。ここで,文字列は左端から検査し,解答群中の△は空白を表す。
状態遷移表(行=現在の状態,列=文字)
| 現在の状態\文字 | 空白 | 数字 | 符号 | 小数点 | その他 |
|---|---|---|---|---|---|
| a | a | b | c | d | e |
| b | a | b | e | d | e |
| c | e | b | e | d | e |
| d | a | e | e | e | e |
答えを選ぶ
出典:基本情報技術者試験 科目A免除 修了試験 20180128 実施分 問4(問題文は IPA の公開問題。解説は当サイト作成)
解説に誤りを見つけたら、解説の誤りを報告してください。
答えと解説を見る
正解:ウ
覚える知識
状態遷移表による文字列検査
状態遷移表は、現在の状態と入力文字から次の状態を引く表で、文字列を先頭から順にたどって合否を判定する。
この問題で必要なこと
表に従って1文字ずつ状態を遷移させる。12.2は a→b→b→d と進み、dで数字を読むとeになって不合格。
ひっかけ
小数点の直後に数字が来てもよいと誤解し、d→数字をbへの遷移と取り違える。
この知識の出題:本試験系 2 回・免除試験 5 回(公開問題での観測値)。頻出知識ランキング268位(全1,254件中)。