300円の商品を販売する自動販売機の状態遷移図はどれか。
ここで,入力と出力の関係を“入力/出力”で表し,入力の“a”は“100円硬貨”を,“b”は“100円硬貨以外”を示し,S0~S2は状態を表す。
入力が“b”の場合はすぐにその硬貨を返却する。
また,終了状態に遷移する際,出力の“1”は商品の販売を,“0”は何もしないことを示す。
正答1
解説
正解は1です。
300円の商品なので、100円硬貨(a)を3枚入れた時点で商品を販売し、初期状態に戻る状態遷移図を選びます。
100円硬貨以外(b)はすぐ返却するので、どの状態でも状態を変えない自己遷移で出力は0になります。
【選択肢別解説】
1:○ 図のアでは、S0が開始状態かつ終了状態(二重丸)です。
aの入力でS0からS1、S1からS2へ出力0で進みます。
S2でaが入ると出力1(販売)でS0に戻り、bはすべて自己遷移で出力0です。
100円を3枚入れたときにだけ販売するので、条件に合います。
2:× 図のイでは、S0からS2へ直接a/1で遷移しています。
100円1枚で販売してしまううえ、S1からS2もa/1なので200円でも販売します。
3:× 図のウでは、S1からS2への遷移がa/1です。
2枚目(200円)で販売しており、3枚目はa/0でS0に戻るだけなので誤りです。
4:× 図のエでは、aとbの役割が逆になっています。
bで状態が進み、aは自己遷移なので、100円硬貨を数える動作になっていません。
【ポイント】
状態遷移図では「何回目の入力で出力1が出るか」と「出力後にどこへ戻るか」を確認します。
終了状態を表す二重丸の位置も判断の手がかりになります。