C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

L ={aibjck|のチューリングマシンを構築します。 i * j =k; i、j、k≥1}


ここでは、言語L ={AiBjCk|用のチューリングマシンを作成する方法を説明します。 i * j =k; i、j、k≥1}。したがって、これは、A、B、Cの3文字のみを使用する一種の言語を表します。wは文字列です。したがって、w =AABBBBCCCCCCCCの場合、チューリングマシンはそれを受け入れます。

これを解決するために、このアプローチを使用します。

  • まず、Aをxに置き換えて、右に移動します。次に、すべてのAをスキップして、右に移動します

  • 頭が最初のBに到達したら、1つのBをyに置き換え、次にすべての中間Bをスキップして右に移動し、置き換えられたBに対応して1つのCをzに置き換え、左に移動します。

  • 次に、途中ですべてのzとBをスキップして左に移動します。

  • ポインタが最近のyに到達したら、右に移動します。

  • ポインタがBを指している場合は、手順2〜4を繰り返します。そうでない場合は、ポインタがzを指している場合は、すべてのyをBに置き換え、すべてのAをスキップしながら、左に移動します。

  • ポインタが最新のxに到達したら、右に移動します。

  • ポインタがまだAを指している場合は、上記のすべての手順を繰り返します。そうでない場合は、頭がyにあるときに、すべてのyとzをスキップして右に移動します。

  • $に達したら、左に移動します。文字列が受け入れられます。

状態遷移図

L ={aibjck|のチューリングマシンを構築します。 i * j =k; i、j、k≥1}


  1. Mac 用スタートアップ マネージャー:今すぐマシンを修正してください!

    コンピュータを使用しているときに直面した最悪の経験の 1 つは、永遠に続くように見える長い起動時間です。これは、Mac がシャットダウン状態から完全に動作する状態になるまでにかかる起動時間です。コンピューターの電源を入れると、それを使用したいことが明らかです。そして、開始が早ければ早いほど良いです。また、Mac を購入したときに、起動が遅いという症状が見られなかったことに気づいたかもしれません。これは、時間の経過とともに何かが変化したことを意味します。 Mac 用の Startup Manager は、遅い起動の問題を特定して修正し、古いマシンで驚くほど機能するのに役立つアプリケーションの 1

  2. Windows PC 向けベスト 10 仮想マシン ソフトウェア (2022)

    コンピューターで一度に 1 つのソフトウェアしか実行できないとしたらどうなるか想像してみてください。メールをチェックしたい場合は、現在のプログラムをオフにする必要があります。インターネットにアクセスしたい場合は、Word 文書または現在作業中の他のアプリを閉じる必要があります。かなり難しそうですよね? 一度に多数のアプリケーションを実行できることは「当然」と考えていますが、一度に複数のオペレーティング システムを実行することはほとんど考えていません。ありがたいことに、ベスト仮想化ソフトウェア (2021) 単一のマシンで複数の OS を並行して使用する作業が容易になります。 1 台の物理マ