状態遷移表のとおりに動作し、運転状況に応じて装置の温度が上下するシステムがある。 システムの状態が“レディ”のとき、@〜Eの順にイベントが発生すると、最後の状態はどれになるか。 ここで、状態遷移表の空欄は状態が変化しないことを表す。
[発生するイベント] | |
@ | メッセージ1を受信する。 |
A | メッセージ1を受信する。 |
B | 装置の温度が50℃以上になる。 |
C | メッセージ2を受信する。 |
D | 装置の温度が40℃未満になる。 |
E | メッセージ2を受信する。 |
ア | レディ |
イ | 高速運転 |
ウ | 低速運転 |
エ | 一時停止 |
答え エ
【解説】
システムの状態が“レディ”で@のメッセージ1を受信すると運転を開始し状態が2の“高速運転”に遷移する。
システムの状態が“高速運転”でAのメッセージ1を受信すると何もせず、状態は変わらない。
システムの状態が“高速運転”でBの装置の温度が50℃以上になると減速し状態が3の“低速運転”に遷移する。
システムの状態が“低速運転”でCのメッセージ2を受信すると一時停止し状態が4の“一時停止”に遷移する。
システムの状態が“一時停止”でDの装置の温度が40℃未満になると運転再開し状態が3の“低速運転”に遷移する。
システムの状態が“低速運転”でEのメッセージ2を受信すると一時停止し状態が4の“一時停止”(エ)に遷移する。
【キーワード】
・有限オートマトン
・状態遷移表