2

宿題の質問があります:

a の b と c で構成される文字列を入力として取り、各部分文字列 abc の末尾に 1 を含み、他のすべての位置に 0 を含む文字列を出力する Moore マシンを構築します。例: 入力 aabcb は出力 000010 を生成します

構築してみましたが、行き止まりになってしまいました。これが私の試みです: ここに画像の説明を入力

ご覧のとおり、文字列 cccb を作成できず、'abc' は 0 を出力できます。この単純な問題を複雑にしすぎたように感じます。

編集:休憩を取って、それをやり直しました。誰かが私に別のことを言わない限り、これは正しいと思います:

ここに画像の説明を入力

4

2 に答える 2

2

ソリューション。はっきりと考える必要がありました。

ソリューション

于 2014-08-24T22:13:30.957 に答える
0

私は答えを台無しにすることなくあなたを助けようとします:

  • 2 番目のサイクル (下の三角形) を使用するのはなぜですか?
  • サブシーケンスを見つけた後に正常に停止するマシンをどのように実装しますか?
  • それを無期限に実行し続けるために何をする必要がありますか? サブシーケンスに一致するエラーが初期状態と同等であることを確信してください。

私は 4 つの状態だけを使用して解決しましたが、3 つだけの解決策があるかもしれません。それ以上に良くなることはできないことは明らかです。

于 2014-08-24T21:17:08.610 に答える