ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Один ΠΈΠ· Π²Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΡ… вопросов соврСмСнной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠΈ β€” сущСствуСт Π»ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ любого Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ исполнитСля. ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° этот вопрос Π±Ρ‹Π» ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ двумя Π²Ρ‹Π΄Π°ΡŽΡ‰ΠΈΠΌΠΈΡΡ ΡƒΡ‡Π΅Π½Ρ‹ΠΌΠΈ β€” А. Π’ΡŒΡŽΡ€ΠΈΠ½Π³ΠΎΠΌ ΠΈ Π­. ΠŸΠΎΡΡ‚ΠΎΠΌ. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΈΠΌΠΈ исполнитСли ΠΎΡ‚Π»ΠΈΡ‡Π°Π»ΠΈΡΡŒ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, Π½ΠΎ оказалось, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°, Π° Π³Π»Π°Π²Π½ΠΎΠ΅ β€” ΠΈΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ любого Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ исполнитСля.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ? Π§Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ β€” ΠΎΠ΄ΠΈΠ½ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ исполнитСля? Если Π’Ρ‹ ΠΈΠ³Ρ€Π°Π»ΠΈ Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ ΠΈΠ³Ρ€Ρ‹ β€” Π½Π° экранС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ бСспрСкословно ΠΏΠΎΠ΄Ρ‡ΠΈΠ½ΡΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΠΈΠ³Ρ€Π°ΡŽΡ‰Π΅Π³ΠΎ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ΠΎΠΌ допустимых ΠΊΠΎΠΌΠ°Π½Π΄. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ сам являСтся исполнитСлСм, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π½Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Π° Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ. Π’ΠΎΡ‚ ΠΈ получаСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ исполнитСля.

Рассмотрим Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠœΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°.

Машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° прСдставляСт собой Π±Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ Π»Π΅Π½Ρ‚Ρƒ, ΠΏΠΎΠ΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Π½Π° ячСйки, ΠΈ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ (ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰Π΅-ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΡŽΡ‰Π΅Π΅ устройство), которая двиТСтся вдоль Π»Π΅Π½Ρ‚Ρ‹.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ описываСтся Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π΄Π²ΡƒΡ… Π°Π»Ρ„Π°Π²ΠΈΡ‚ΠΎΠ²:

A= β€” внСшний Π°Π»Ρ„Π°Π²ΠΈΡ‚, слуТит для записи исходных Π΄Π°Π½Π½Ρ‹Ρ…

Q= β€” Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Π°Π»Ρ„Π°Π²ΠΈΡ‚, описываСт Π½Π°Π±ΠΎΡ€ состояний ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰Π΅-ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠ³ΠΎ устройства.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

КаТдая ячСйка Π»Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ символ ΠΈΠ· внСшнСго Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° A = (Π’ нашСм случаС A=<0, 1>)

ДопустимыС дСйствия ΠœΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° Ρ‚Π°ΠΊΠΎΠ²Ρ‹:

1) Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ символ внСшнСго Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° Π² ячСйку Π»Π΅Π½Ρ‚Ρ‹ (символ, Π±Ρ‹Π²ΡˆΠΈΠΉ Ρ‚Π°ΠΌ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, затираСтся)

2) ΡΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ Π² сосСднюю ячСйку

3) ΡΠΌΠ΅Π½ΠΈΡ‚ΡŒ состояниС Π½Π° ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… символом Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° Q

Машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° β€” это Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ управляСтся Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ.

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ символам Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° A, Π° столбцы β€” состояниям Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚Π° Q = . Π’ Π½Π°Ρ‡Π°Π»Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° находится Π² состоянии q1. БостояниС q0 β€” это ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ состояниС, ΠΏΠΎΠΏΠ°Π² Π² Π½Π΅Π³ΠΎ, Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠ»Π΅Ρ‚ΠΊΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ символу ai ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ qj, находится ΠΊΠΎΠΌΠ°Π½Π΄Π°, состоящая ΠΈΠ· Ρ‚Ρ€Π΅Ρ… частСй
Β· символ ΠΈΠ· Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° A
Β· Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ пСрСмСщСния: Β«>Β» (Π²ΠΏΡ€Π°Π²ΠΎ), Β«

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° Π½Π° ΡˆΠ°Π±Π»ΠΎΠ½Π°Ρ…

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠΉΡΡ шаблонами Π² Π‘++ скорСС всСго ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎΠ± ΠΈΡ… Π’ΡŒΡŽΡ€ΠΈΠ½Π³-ΠΏΠΎΠ»Π½ΠΎΡ‚Π΅ ΠΈ связанных с этим ΡˆΡƒΡ‚ΠΊΠ°Ρ… ΠΏΡ€ΠΎ Β«we put a language in your language, so you can program while you programΒ». Π’ этом постС я расскаТу ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ шаблонов ΠΈ константных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π½Π°ΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°, Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‰ΡƒΡŽ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²ΠΎ врСмя компиляции, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. НапримСр усСрдный Π±ΠΎΠ±Π΅Ρ€ с 4 состояниями ΠΈ 2 символами выглядит ΠΊΠ°ΠΊ-Ρ‚ΠΎ Ρ‚Π°ΠΊ:

На Π²Ρ‹Ρ…ΠΎΠ΄Π΅, ΠΊΠ°ΠΊ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ

Π’ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° ΠΊΠΎΠ΄: https://ideone.com/MvBU3Z. Π–Π΅Π»Π°ΡŽΡ‰ΠΈΠ΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ всС устроСно Π²Π½ΡƒΡ‚Ρ€ΠΈ, Π΄ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ ΠΊΠ°Ρ‚.

Для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° (МВ Π΄Π°Π»Π΅Π΅) Π½ΡƒΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:
1. Π›Π΅Π½Ρ‚Π° с символами
2. Бпособ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ символы Π½Π° Π»Π΅Π½Ρ‚Ρƒ
3. Бпособ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎ Π»Π΅Π½Ρ‚Π΅ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ Π΅Π΅ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ надобности
4. БистСма состояний ΠΈ ΠΏΡ€Π°Π²ΠΈΠ» ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π°
5. Бпособ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ состояниС систСмы Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ (машина + Π»Π΅Π½Ρ‚Π°)
6. Бпособ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΊΠΎΠ³Π΄Π° машина достигаСт Ρ„ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ состояния

ВсС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π°Π΄ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ ΠΈ константными выраТСниями, Π° Π½Π΅ Π½Π°Π΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΊΠ°ΠΊ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ. Для согласованности со стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Π‘++, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ способ вычислСний:

ИспользованиС ΠΈΠΌΠ΅Π½ΠΈ Β«typeΒ» для хранСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² сдСлаСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Ρ‚Ρ€ΡŽΠΊΠΈ с std::conditional ΠΈ std::integral_constant, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ Π² далнСйшСм.

Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с Π»Π΅Π½Ρ‚ΠΎΠΉ? МоТно Π΅Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, вывСсти Π½Π° экран. Ѐункция print Π±ΡƒΠ΄Π΅Ρ‚ СдинствСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… для нашСй ΠΌΠ°ΡˆΠΈΠ½Ρ‹.

Π—Π΄Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ стандартный Ρ‚Ρ€ΡŽΠΊ с рСкурсивным шаблоном. По ссылкС ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉΡΡ ΠΊΠΎΠ΄: https://ideone.com/DBHSC6

2. ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Ρ‡Ρ‚Π΅Π½ΠΈΡŽ ΠΈ записи, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:

Π‘ ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠ΅ΠΉ всС просто.

Π˜Π½Π²Π΅Ρ€ΡΠΈΡ Ρ‡ΡƒΡ‚ΡŒ-Ρ‡ΡƒΡ‚ΡŒ послоТнСС: Π±Π΅Ρ€Π΅ΠΌ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ, пСрСносим Π΅Π³ΠΎ Π² ΠΊΠΎΠ½Π΅Ρ† ΠΈ ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½ΠΈΡ€ΡƒΠ΅ΠΌ с ΠΏΠ΅Ρ€Π΅Π²Π΅Ρ€Π½ΡƒΡ‚Ρ‹ΠΌ хвостом. Π’Π½ΡƒΡ‚Ρ€ΠΈ разворачиваСтся рСкурсия Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ получаСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ запуска: https://ideone.com/47GKNp

Π§Ρ‚Π΅Π½ΠΈΠ΅ символов β€” мСсто, Π³Π΄Π΅ начинаСтся магия со стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ.

Π›ΠΎΠ³ΠΈΠΊΠ° Π½Π° самом Π΄Π΅Π»Π΅ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ проста: Ссли n == 0, ΠΌΡ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ Π»Π΅Π½Ρ‚Ρ‹, ΠΎΠ±Π΅Ρ€Π½ΡƒΡ‚Ρ‹ΠΉ Π² std::integral_constant, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΌΡ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅ΠΌ n Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ ΠΈ отбрасываСм ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ. Для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ½Π° конструкция ::type::type? ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ type относится ΠΊ std::conditional. std::conditional ::type равняСтся A, Ссли T == true, ΠΈ равняСтся B Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π² зависимости ΠΎΡ‚ значСния n, вся конструкция развСрнСтся Π² ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ:

Π Π°Π·Π³Π°Π΄ΠΊΠ°: Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС шаблон Read > Π±ΡƒΠ΄Π΅Ρ‚ инстанциирован Π² зависимости ΠΎΡ‚ значСния n, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ инстанциирован всСгда, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ явно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ alias (::type). Если ΠΌΡ‹ всСго лишь упомянСм имя шаблона, ΠΎΠ½ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ инстанциирован, Ссли ΠΌΡ‹ попытаСмся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ· Π΅Π³ΠΎ внутрСнностСй, шаблон Π±ΡƒΠ΄Π΅Ρ‚ инстанциирован. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ бСсконСчной рСкурсии, которая всС ΠΆΠ΅ остановится, Π½ΠΎ с ошибкой. Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅ΠΌ с ::type::type Π±ΡƒΠ΄Π΅Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² дальнСйшСм.
Π’ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ чтСния с Π»Π΅Π½Ρ‚Ρ‹: https://ideone.com/vEyASt

Π—Π°ΠΏΠΈΡΡŒ. Допустим ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° Π»Π΅Π½Ρ‚Ρƒ вмСсто символа Ρ… символ y. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ записи ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ всСй Π»Π΅Π½Ρ‚Ρ‹ Π½Π° Ρ‡Π°ΡΡ‚ΡŒ Π΄ΠΎ Ρ…, сам символ Ρ… ΠΈ Ρ‡Π°ΡΡ‚ΡŒ послС Ρ…, Π·Π°ΠΌΠ΅Π½Ρƒ x Π½Π° y ΠΈ ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ всСх частСй ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² Ρ†Π΅Π»ΠΎΠ΅. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ для вычислСния n ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΠΈ послСдних символов:

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ n послСдних символов, Π±ΡƒΠ΄Π΅ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π»ΠΈ для чтСния: ΡƒΠΊΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π»Π΅Π½Ρ‚Ρƒ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ символу, ΠΏΠΎΠΊΠ° Π΄Π»ΠΈΠ½Π° ΠΎΡΡ‚Π°Π²ΡˆΠ΅Π³ΠΎΡΡ куска Π½Π΅ станСт Ρ€Π°Π²Π½Π° n. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ n символов, ΠΏΠ΅Ρ€Π΅Π²Π΅Ρ€Π½Π΅ΠΌ Π»Π΅Π½Ρ‚Ρƒ, возьмСм послСдниС n символов ΠΈ ΠΏΠ΅Ρ€Π΅Π²Π΅Ρ€Π½Π΅ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования: https://ideone.com/igYF3W.

НаконСц, нСпосрСдствСнно запись:

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ Π½Π΅ слоТно ΠΏΠΎΠ½ΡΡ‚ΡŒ, зная, Ρ‡Ρ‚ΠΎ Ρ‚ΡƒΡ‚ Π½Π° самом Π΄Π΅Π»Π΅ происходит. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ записи: https://ideone.com/w2mUdh

Π’ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ класс для прСдставлСния Π»Π΅Π½Ρ‚Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΌΠ΅Π΅ΠΌ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ символы. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒ Π»Π΅Π½Ρ‚Ρƒ.

3. Наша МВ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ пСрСдвиТСния: Hold, Left and Right. КаТдая ΠΈΠ· Π½ΠΈΡ… Π΄ΠΎΠ»ΠΆΠ½Π° ΡƒΠΌΠ΅Ρ‚ΡŒ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ состояниС Π»Π΅Π½Ρ‚Ρ‹, зная Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π΅Π΅ состояниС ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ. Если машина смотрит Π½Π° символ Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 0 ΠΈ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ Π΅Π΅ Π²Π»Π΅Π²ΠΎ, Π»Π΅Π½Ρ‚Ρƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ. Аналогично Π² случаС, ΠΊΠΎΠ³Π΄Π° машина смотрит Π½Π° ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ символ ΠΈ двигаСтся Π²ΠΏΡ€Π°Π²ΠΎ.

4. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ состояниям. Если машина находится Π² ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ состоянии ΠΈ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ символ с Π»Π΅Π½Ρ‚Ρ‹, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ Ρ‚Ρ€ΠΈ Π²Π΅Ρ‰ΠΈ: Ρ‡Ρ‚ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ, ΠΊΡƒΠ΄Π° Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠ΅ состояниС ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ. Бостояния Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π³Ρ€ΡƒΠΏΠΏΡƒ спСциализаций шаблонов, Π³Π΄Π΅ каТдая спСциализация соотвСтствуСт ΠΏΠ°Ρ€Π΅ (состояниС, символ), Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Ρƒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π°. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π°Π΄Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ: Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² состоянии A ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² символ 0, Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ вмСсто Π½Π΅Π³ΠΎ 1, ΡΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡŒΡΡ Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² состояниС B. Π’Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ это ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

Π—Π΄Π΅ΡΡŒ использована отличная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ соврСмСнного Π‘++: alias template. Поля Β«moveΒ» ΠΈ Β«nextΒ» Π½Π΅ просто Ρ‚ΠΈΠΏΡ‹, Π° ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ Ρ‚ΠΈΠΏΠΎΠ², Π² дальнСйшСм ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ МВ для вычислСния своСго ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ состояния. ΠŸΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° довольно ΡƒΡ‚ΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, поэтому ΠΎΠ±Π΅Ρ€Π½Π΅ΠΌ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ» ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² макрос. БостояниС, пСрСйдя Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ машина Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ, Π½Π°Π·ΠΎΠ²Π΅ΠΌ Stop.

5. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ состояниС всСй систСмы (состояниС ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π΅Π΅ тСкущая позиция ΠΈ состояниС Π»Π΅Π½Ρ‚Ρ‹), ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ класс Machine. ЕдинствСнноС, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠΌΠ΅Ρ‚ΡŒ этот класс β€” Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ шаг симуляции, Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ своС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ состояниС.

Π‘ΠΏΠ΅Ρ€Π²Π° ΠΌΡ‹ считываСм символ с Π»Π΅Π½Ρ‚Ρ‹ ΠΈ сохраняСм Π΅Π³ΠΎ ΠΊΠ°ΠΊ Β«symbolΒ». Π”Π°Π»Π΅Π΅ ΠΌΡ‹ инстанциируСм класс State с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ символа ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π°. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ состояниС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ опрСдСляСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Β«templateΒ» ΠΏΠ΅Ρ€Π΅Π΄ Β«nextΒ»? Богласно стандарту, ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ шаблона Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Β«templateΒ», Ссли это имя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ послС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ области видимости(«::»). ΠŸΡ€ΠΈ вычислСнии ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ пСрСмСщСния ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΆΠ΅ эффСкт.

Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ состояниС Π»Π΅Π½Ρ‚Ρ‹, запишСм Π² Π½Π΅Π΅ Π½ΠΎΠ²Ρ‹ΠΉ символ ΠΈ ΠΏΠΎ нСобходимости Ρ€Π°ΡΡˆΠΈΡ€ΠΈΠΌ, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Π·Π²Π°Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ записи ΠΈ пСрСмСщСния. ВычислСниС Π½ΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ.

НаконСц, всС Π³ΠΎΡ‚ΠΎΠ²ΠΎ, ΠΈ ΠΌΡ‹ ΡƒΠΌΠ΅Π΅ΠΌ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ состояниС систСмы, Π΄Π΅Π»Π°Ρ‚ΡŒ шаги. МоТно Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ для Π²Ρ‹Π²ΠΎΠ΄Π° состояния ΠΌΠ°ΡˆΠΈΠ½Ρ‹, ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ пошагово ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° Π΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ: https://ideone.com/XuBDry. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ машина двиТСтся ΠΏΡ€Π°Π²ΠΎ ΠΈ замСняСт всС Π½Π° своСм ΠΏΡƒΡ‚ΠΈ.

6. ВсС выглядит Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π½ΠΎ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠ΄Ρ‚ΠΈ Π³Π»ΡƒΠ±ΠΆΠ΅: Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ для процСсса ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ состояниС ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π΅Π΅ позиция ΠΈ состояниС Π»Π΅Π½Ρ‚Ρ‹, Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π½Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΡΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ с Π»Π΅Π½Ρ‚ΠΎΠΉ, ΠΊΠΎΠ³Π΄Π° машина достигла состояния Stop. ОкСй, напишСм класс

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ условиС остановки, ΠΌΡ‹ инстанциируСм Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ состояниС Stop со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ 0, послС Ρ‡Π΅Π³ΠΎ сравниваСм ΠΈΡ… ΠΌΠ΅ΠΆΠ΄Ρƒ собой посрСдством std::is_same. Если ΠΎΠ½ΠΈ Ρ€Π°Π²Π½Ρ‹, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ Π»Π΅Π½Ρ‚Ρƒ, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π΄Π΅Π»Π°ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаг ΠΈ снова провСряСм условиС остановки.

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ. НапримСр ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ чисСл Π² Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ число записано слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ, ΠΊΠ°ΠΊ Π½Π° Π±ΡƒΠΌΠ°ΠΆΠΊΠ΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РСшСниС Π·Π°Π΄Π°Ρ‡. Машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° машинС Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°, ΠΏΡ€ΠΈΠ±Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ число 2 ΠΊ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΌΡƒ числу.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° машинС Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΏΡ€ΠΈΠ±Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ 3 ΠΊ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΌΡƒ числу.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠŸΠ΅Ρ€Π΅Π½Π΅ΡΡ‚ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ нСпустого слова P Π² Π΅Π³ΠΎ ΠΊΠΎΠ½Π΅Ρ†. Алфавит : A=.

Если ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ – это a, Ρ‚ΠΎ Π½Π°Π΄ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² состояниС q2, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ Π±Π΅ΠΆΠΈΡ‚ Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ записываСт Π² ΠΊΠΎΠ½Ρ†Π΅ a. Если ΠΆΠ΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π±Ρ‹Π» символ b, Ρ‚ΠΎΠ³Π΄Π° Π½Π°Π΄ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² состояниС q3, Π³Π΄Π΅ дСлаСтся всё Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ записываСтся символ b. Если ΠΆΠ΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π±Ρ‹Π» символ c, Ρ‚ΠΎΠ³Π΄Π° ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² состояниС q4, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ дописываСт Π·Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌ словом символ c.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ прСдлагаСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠΈΡ‚ΡŒ всё Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ слово ( q 7 ).

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Π—Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ, ΡΡ‚Π΅Ρ€Π΅Ρ‚ΡŒ Π²Ρ‚ΠΎΡ€ΠΎΠΉ символ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π° Π΅Π³ΠΎ мСстС ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Π‘Π΄Π²ΠΈΠ³ символов осущСствляСтся Ρ‚Π°ΠΊ: Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ ΠΊΠ»Π΅Ρ‚ΠΊΠ΅ записываСм b (Ссли Π² q 1 ) ΠΈΠ»ΠΈ c (Ссли Π² q 2 ), ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ мСняСм состояниС Π½Π° q 1 (Ссли Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΊΠ»Π΅Ρ‚ΠΊΠ΅ Π±Ρ‹Π»ΠΎ записано b ) ΠΈΠ»ΠΈ Π½Π° q 2 (Ссли Π±Ρ‹Π»ΠΎ записано c ), Π³Π΄Π΅ осущСствляСтся дальнСйшая запись. Если Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ ΠΊΠ»Π΅Ρ‚ΠΊΠ΅ записано a ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π΅Π», Ρ‚ΠΎ записываСм Π² Π½Π΅Π΅ Π·Π°ΠΏΠΎΠΌΠ½Π΅Π½Π½Ρ‹ΠΉ символ ΠΈ останавливаСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ПослС этого возвращаСмся ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ слова.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Π’Π½Π°Ρ‡Π°Π»Π΅ записываСм Π·Π½Π°ΠΊ = Π·Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌ словом. Π—Π°Ρ‚Π΅ΠΌ возвращаСмся ΠΏΠΎΠ΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ слова.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

АбстрактныС Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» взят с рСсурса ΠŸΠ»Π°Π½Π΅Ρ‚Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠΈ

Π’ΠΎ Π΅ΡΡ‚ΡŒ, всякий ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°.

Машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° состоит ΠΈΠ· бСсконСчной Π² ΠΎΠ±Π΅ стороны Π»Π΅Π½Ρ‚Ρ‹, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π½Π° ячСйки, ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚Π° (Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ), которая управляСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для машин Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π³Π΄Π΅ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ столбСц ΠΈ строка содСрТат Π±ΡƒΠΊΠ²Ρ‹ внСшнСго Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ состояния Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚Π° (Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Π°Π»Ρ„Π°Π²ΠΈΡ‚). Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ прСдставляСт собой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΡƒΠΊΠ²Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ считываСт Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π² ячСйкС (Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½Π° находится Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚), ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ состояниС Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚, ΠΊΠ°ΠΊΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ. Команда опрСдСляСтся пСрСсСчСниСм символов внСшнСго ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Π°Π»Ρ„Π°Π²ΠΈΡ‚ΠΎΠ² Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅.

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°, трСбуСтся ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ для Π½Π΅Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅:

Автомат ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° Π² процСссС своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

Одна ΠΊΠΎΠΌΠ°Π½Π΄Π° для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ прСдставляСт собой ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ этих Ρ‚Ρ€Π΅Ρ… ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ…: ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΉ, ΠΊΠ°ΠΊΠΎΠΉ символ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ячСйку (Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ стоит Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚), ΠΊΡƒΠ΄Π° ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ½ΡƒΡ‚ΡŒΡΡ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠ΅ состояниС ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ. Π₯отя ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΈ Π½Π΅ всС ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π΅ ΠΌΠ΅Π½ΡΡ‚ΡŒ символ, Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΈΠ»ΠΈ Π½Π΅ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ состояния).

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

МоТно ΡƒΡΠ»ΠΎΠΆΠ½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Допустим, Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° располагаСтся Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Π΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ, Π° Π½Π°Π΄ Π»ΡŽΠ±Ρ‹ΠΌ символом слова. Π’ΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для Π΄Π°Π½Π½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ (Π° ΠΌΠΎΠ³Π»Π° Π±Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ):

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Π—Π΄Π΅ΡΡŒ происходит сдвиг Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π²Π»Π΅Π²ΠΎ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΎΠ½Π° Π½Π΅ окаТСтся Π½Π°Π΄ пустым символом. ПослС этого машина ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² состояниС Q2 (ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ Q1 ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹).

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» взят с рСсурса ΠŸΠ»Π°Π½Π΅Ρ‚Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠΈ

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

РСшСниС этой Π·Π°Π΄Π°Ρ‡ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ рассмотрСнному Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Π—Π°Π΄Π°Ρ‡Π° 4 (услоТнСниС Π·Π°Π΄Π°Ρ‡ΠΈ 3)

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Π’Π΅ ΠΊΠ»Π΅Ρ‚ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚, оставляСм пустыми.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

РСшСниС этой Π·Π°Π΄Π°Ρ‡ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρƒ школьников Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π½ΠΈΠ΅. ΠŸΡ€ΠΈ Ρ€Π°Π·Π±ΠΎΡ€Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΉΡ‚ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΡƒΡ‚Π΅ΠΌ.

РассмотритС со школьниками ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… слов ΠΈ попроситС ΠΈΡ… ΡΡ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π΄Π΅Π»Π°Ρ‚ΡŒ машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°, ΠΊΠ°ΠΊΠΎΠ² внСшний Π²ΠΈΠ΄ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ слова, Ρ‡Π΅ΠΌ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° эти Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ:

Рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… слов:

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Однако, ΠΊΠ°ΠΊ Π½ΠΈ странно, Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ этой Π·Π°Π΄Π°Ρ‡ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ большиС трудности. ΠžΡ‡Π΅Π½ΡŒ часто ΡƒΡ‡Π΅Π½ΠΈΠΊΠΈ строят ΠΌΠ°ΡˆΠΈΠ½Ρƒ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°, которая выполняСт цикличСскиС дСйствия: ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠ΄Π²ΠΈΠ³Π°ΡŽΡ‚ ΠΏΡ€Π°Π²Ρ‹Π΅ n ΡˆΡ‚Ρ€ΠΈΡ…ΠΎΠ² ΠΊ Π»Π΅Π²Ρ‹ΠΌ.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Π’ этом случаС ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

На ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ этой Π·Π°Π΄Π°Ρ‡ΠΈ Ρ‡Π΅Ρ‚ΠΊΠΎ Π²ΠΈΠ΄Π½ΠΎ, ΠΊΠ°ΠΊ часто Π΄Π΅Ρ‚ΠΈ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌΠΈ способами. МнС каТСтся, Ρ‡Ρ‚ΠΎ, прСдлагая ΡƒΡ‡Π΅Π½ΠΈΠΊΠ°ΠΌ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° составлСниС машин Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°, ΠΌΡ‹ Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΊ Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ творчСски Π΄ΡƒΠΌΠ°Ρ‚ΡŒ!

Π­Ρ‚Π° Π·Π°Π΄Π°Ρ‡Π° каТСтся школьникам достаточно Π»Π΅Π³ΠΊΠΎΠΉ, Π½ΠΎ трудности Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ с остановом ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° для этой Π·Π°Π΄Π°Ρ‡ΠΈ.

ИдСя Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ (условиС останова). На Π»Π΅Π½Ρ‚Π΅ Π΅ΡΡ‚ΡŒ Π΄Π²Π° исходных массива ΡˆΡ‚Ρ€ΠΈΡ…ΠΎΠ².

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ОпишСм сначала состояния ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ нашСй Π·Π°Π΄Π°Ρ‡ΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ составим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ-Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ.

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠŸΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ этой Π·Π°Π΄Π°Ρ‡ΠΈ слСдуСт ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ выписываниС Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°:

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Π Π°Π±ΠΎΡ‚Π° ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠŸΠΎΡΡ‚Π° опрСдСляСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, состоящСй ΠΈΠ· ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ числа строк. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ Π΅Ρ‘ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ состояниС (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ состояниС Π»Π΅Π½Ρ‚Ρ‹ ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ). ΠšΠ°Ρ€Π΅Ρ‚ΠΊΠΎΠΉ управляСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, состоящая ΠΈΠ· ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ упорядочСнных строк ΠΊΠΎΠΌΠ°Π½Π΄, Ссли Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡƒΠΊΠ°Π·Π°Π½Π° строка, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ принимаСтся, Ρ‡Ρ‚ΠΎ Ссли Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ происходит Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку. КаТдая ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

ПослС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ запуска Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Эмулятор ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°

Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ эмулятором

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°?

Машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° β€” абстрактная Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ машина, прСдлоТСнная Аланом Π’ΡŒΡŽΡ€ΠΈΠ½Π³ΠΎΠΌ для Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ понятия Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. Устройство МВ состоит ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ частСй:

БСсконСчная Π»Π΅Π½Ρ‚Π°

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π° Π»Π΅Π½Ρ‚Ρƒ Π² Π½Π°Ρ‡Π°Π»Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠΌΠ΅Ρ‰Π°ΡŽΡ‚ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ слово. Π’ процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° содСрТимоС Π»Π΅Π½Ρ‚Ρ‹ модифицируСтся устройством управлСния ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π½Π° Π»Π΅Π½Ρ‚Π΅ остаётся Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ΅ слово.

Π‘Ρ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰Π°Ρ/Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π°Ρ Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°

Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ машинС Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Π½Π° ΠΎΠ΄Π½Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ ячСйку Π½Π° Π»Π΅Π½Ρ‚Π΅. Π”Π°Π½Π½ΠΎΠ΅ устройство позволяСт ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ символ с ячСйки, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ находится, ΠΈΠ»ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ символ Π² эту ячСйку. Π’Π°ΠΊΠΆΠ΅ Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π²Π»Π΅Π²ΠΎ ΠΈ Π²ΠΏΡ€Π°Π²ΠΎ Π½Π° ΠΎΠ΄Π½Ρƒ ячСйку, ΠΈΠ»ΠΈ ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ Π½Π° мСстС.

Устройство управлСния

Π”ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠ΅ записи для ΠΏΡ€Π°Π²ΠΈΠ»:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ машин Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1 (Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² эмулятор). К Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌΡƒ числу ΠΏΡ€ΠΈΠ±Π°Π²ΠΈΡ‚ΡŒ 1. Π’ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π° самом ΡΡ‚Π°Ρ€ΡˆΠ΅ΠΌ Π±ΠΈΡ‚Π΅ слова (слСва).

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° МВ находится Π½Π° самом ΡΡ‚Π°Ρ€ΡˆΠ΅ΠΌ Π±ΠΈΡ‚Π΅, Π° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π½Π°Π΄ΠΎ младший, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΠ»ΠΎΠ²ΠΊΡƒ Π½Π° младший Π±ΠΈΡ‚, Ρ‡Ρ‚ΠΎ выполняСтся Π² состоянии q0: ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π»Π΅Π½Ρ‚Π° ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ символ Ξ», ΠΎΠ½Π° сдвинСтся Π²Π»Π΅Π²ΠΎ (Π½Π° младший Π±ΠΈΡ‚) ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘Ρ‚ Π² состояниС ΠΈΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° (q1).

Π’ состоянии q1 Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ситуации:

БостояниС q2 Π½ΡƒΠΆΠ½ΠΎ лишь для выполнСния условия остановки Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π½Π° ΡΡ‚Π°Ρ€ΡˆΠ΅ΠΌ Π±ΠΈΡ‚Π΅. Оно ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ происходит Π² Π»Π΅Π²ΡŽΡƒ сторону ΠΈ ΠΏΡ€ΠΈ достиТСнии пустого символа Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° сдвигаСтся Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ выполняСтся останов.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2 (Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² эмулятор). Π’ словС ΠΈΠ· Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ символы. Π’ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° находится Π² Π½Π°Ρ‡Π°Π»Π΅ слова.

Q \ AabΞ»
q0b R q0a R q0!

Programforyou β€” это сообщСство, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄Ρ‚ΡΠ½ΡƒΡ‚ΡŒ свои знания ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ эффСктивно Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ нашими ΠΎΠ½Π»Π°ΠΉΠ½ сСрвисами.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *