Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ
ΠΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ ΡΠ²Π»ΡΡΡΡΡ ΠΌΠΎΡΠ½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ². ΠΡΠ±ΠΎΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΏΠΈΡΠ΅ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠ°.
Π ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΠΎ Π΅Π³ΠΎ ΠΊΠΎΠ½ΡΠ΅Π½ΠΎΠΌΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ (Wikipedia).
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΠΈΠ΄ΠΎΠ² ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ
Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ²:
ΠΠ΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ (ΠΠΠ)
ΠΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠ΅Ρ
ΠΎΠ΄ ΠΏΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²Ρ, ΠΈΠ½Π°ΡΠ΅ ΡΡΠΎΡ Π°Π²ΡΠΎΠΌΠ°Ρ Π½Π΅Π΄Π΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½.
ΠΠΠ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΌΡΠΌ ΡΠ΄ΠΎΠ±Π½ΡΠΌ ΠΈΠ· Π²ΡΠ΅Ρ
ΠΊΠΎΠ½ΡΠ΅Π½ΡΡ
Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ². ΠΠ³ΠΎ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ Π²ΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΠ²Π°ΡΡ, Π²ΡΠ΅Π³Π΄Π° ΡΡΠ°ΡΠ°ΡΡΡΡ ΡΠ²Π΅ΡΡΠΈ Π·Π°Π΄Π°ΡΡ ΠΊ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΠΠ. ΠΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡ ΠΠΠ ΠΈ Ξ΅-ΠΠΠ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ.
ΠΠ΅Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ(ΠΠΠ)
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΠΏΠΎΡΡΡΠΎΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ, ΡΠΎΡΡΠΎΡΡΠΈΠ΅ ΠΈΠ· ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² [0, 1], Π³Π΄Π΅ Π²ΡΠΎΡΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ» Π±ΡΠ΄Π΅Ρ 0.
Ξ΅-ΠΠ΅Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ (Ξ΅-ΠΠΠ)
Ξ΅-ΠΠΠ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ
ΠΎΠΆ Π½Π° ΠΠΠ, ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ ΠΏΠΎ Ξ΅. Π’Π΅ΠΏΠ΅ΡΡ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΡΠΈΡΠ°Π², ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ Π² Π΄ΡΡΠ³ΡΡ.
ΠΡΠΈΠ½ΠΌΠ°Π΅Ρ ΡΠ΅ΠΆΠ΅ ΡΠ»ΠΎΠ²Π°, ΡΡΠΎ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ
ΠΠΊΠ²ΠΈΠ°Π»Π΅ΡΠ½ΠΎΡΡΡ
ΠΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Ρ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ² β ΡΡΠΎ ΠΈΡ ΡΠΊΠ²ΠΈΠ°Π»Π΅ΡΠ½ΠΎΡΡΡ. ΠΠΠ ΠΠΠ Ξ΅-ΠΠΠ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎ ΠΈΠ· Ξ΅-ΠΠΠ ΡΠ΄Π΅Π»Π°ΡΡ ΠΠΠ, ΡΡΠΎ Π½Π°ΠΌ ΡΠΈΠ»ΡΠ½ΠΎ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ.
ΠΠΊΡΠ°ΡΡΠ΅, ΡΠ°Π·ΠΎΠ±ΡΠ°Π² ΠΊΠ°ΠΊΠΈΠ΅ Π±ΡΠ²Π°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΡ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠΌΡ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠ°
ΠΠ°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π»ΠΈ Π΄Π°Π½Π½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ ΡΡΡΠΎΠΊΡ.
ΠΠ»Ρ ΠΠΠ Π²ΡΠ΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ. ΠΡ Ρ
ΡΠ°Π½ΠΈΠΌ ΠΌΠ°ΡΡΠΈΡΡ ΠΏΡΠ΅Ρ
ΠΎΠ΄ΠΎΠ², ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ (ΠΊΠΎΠ³Π΄Π° ΠΌΡ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΡΠΈΡΠ°Π»ΠΈ, ΡΠ΅ΠΊ. ΡΠΎΡΠΎΡΠ½ΠΈΠ΅ = Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅) ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ. Π‘ΡΠΈΡΡΠ²Π°Π΅ΠΌ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΈ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠΎ ΠΌΠ°ΡΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π°.
ΠΠ»Ρ ΠΠΠ Π²ΠΌΠ΅ΡΡΠΎ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΌΡ Ρ ΡΠ°Π½ΠΈΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΡΡΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ. Π Π°Π·Π±Π΅ΡΠ΅ΠΌ ΠΠΠ Π΄Π°Π½Π½ΡΠΉ Π²ΡΡΠ΅.
ΠΡΡΡΡ ΠΌΡ Ρ
ΠΎΡΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ 0. Π’Π΅ΠΊΡΡΠ΅Π΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ β ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ, ΡΠΎΡΡΠΎΡΡΠ΅Π΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ β Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ. Π£ Π½Π°Ρ Π΅ΡΡΡ Π΄Π²Π° ΠΏΡΠ΅Ρ
ΠΎΠ΄Π° ΠΏΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ 0 => ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ Ρ Π½Π°Ρ Π±ΡΠ΄Π΅Ρ 0, Q1>. ΠΠ°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΏΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ 0. ΠΠ· Q0 ΠΌΡ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π² Q0 ΠΈ Π² Q1, ΠΈΠ· Q1 Π² Q2 => Π½Π°ΡΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π±ΡΠ΄Π΅Ρ
0, q1, q2>.
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Ξ΅-ΠΠΠ ΠΏΠΎΡ ΠΎΠΆΠ° Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΠΠ. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ Π½Π°ΡΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ S. ΠΠ΅ΡΠ΅Π΄ ΡΡΠΈΡΡΠ²Π°Π΅Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΠ΅Π³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°: Π΄Π»Ρ Π²ΡΠ΅Ρ q β S Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ S Π²Π΅ΡΡΠΈΠ½Ρ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΠΌΡΡ ΠΈΠ· q ΠΏΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Ξ΅.
ΠΠ΅ΡΠ΅ΡΠΌΠΈΠ½Π°ΡΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠ°
ΠΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ Π°Π²ΡΠΎΠΌΠ°Ρ ΠΈΠ· ΠΠΠ Π² ΠΠΠ Π»Π΅Π³ΠΊΠΎ. ΠΠ°ΠΌ ΠΏΡΠΎΡΡΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ, Ρ.ΠΊ. ΠΠΠ ΡΡΠΎ ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ ΠΠΠ.
ΠΠΎ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Π΅ΡΠ»ΠΈ ΠΌΡ Ρ
ΠΎΡΠΈΠΌ ΠΏΡΠ΅Π²Π΅ΡΡΠΈ ΠΈΠ· Ξ΅-ΠΠΠ Π² ΠΠΠ (ΠΠΠ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΡΠΌ ΡΠ»ΡΡΠ°Π΅ΠΌ Ξ΅-ΠΠΠ). ΠΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½Π°ΡΠΈΠ΅ΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠ°.
ΠΠ°ΡΠ½Π΅ΠΌ ΠΎΠ±ΠΎΡ ΠΎΠ΄ΠΈΡΡ Π½Π°Ρ Ξ΅-ΠΠΠ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, DFS-ΠΎΠΌ. ΠΠ΅ΡΡΠΈΠ½ΠΎΠΉ Π³ΡΠ°ΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΡΡΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ. Π‘ΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΠΠ Π±ΡΠ΄ΡΡ Π²ΡΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ Π³ΡΠ°ΡΠ°. ΠΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ ΠΊ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΈΡΠ½Π΅ ΠΌΡ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ» ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ, ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΡΠΎΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄. ΠΡΠΈΠ²Π΅Π΄Ρ ΠΏΡΠ΅Π²Π΄ΠΎΠΊΠΎΠ΄ DFS-a Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΡΠ½ΠΎΡΡΠΈ:
ΠΡΠ»ΠΈ Π² ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅ Π΅ΡΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, ΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΠΠ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΆΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠΌ.
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ ΡΠΈΡΠ»ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΠΠ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΈ ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ, ΡΡΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠΎΡΠΎ, Ρ.ΠΊ. ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΠΠ
ΠΡΠ±ΠΎΠΉ ΠΠΠ ΠΈΠΌΠ΅Π΅Ρ ΡΠΊΠ²ΠΈΠ°Π»Π΅ΡΠ½ΡΠΉ Π΅ΠΌΡ ΠΠΠ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ. ΠΠ°ΠΊ Π΅Π³ΠΎ Β«ΡΠΆΠ°ΡΡΒ»? ΠΠ°ΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ Π½Π΅ΡΠ°Π·Π»ΠΈΡΠΈΠΌΡΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π² ΠΎΠ΄Π½Ρ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΠΌΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅?
Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ p ΠΈ q ΡΠ²Π»ΡΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΠΌΡΠΌΠΈ, Π΅ΡΠ»ΠΈ Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ s, ΡΡΠΎ ΠΏΡΠ΅Ρ
ΠΎΠ΄Ρ ΠΈΠ· Π²Π΅ΡΡΠΈΠ½Ρ p ΠΏΠΎ ΡΠ»ΠΎΠ²Ρ s ΠΌΡ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, Π° ΠΈΠ· Π²Π΅ΡΡΠΈΠ½Ρ q Π² Π½Π΅-ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅, ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ.
1) Π’Π΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΈ Π½Π΅-ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΠΌΡΠΌΠΈ. ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΏΠΎ ΠΏΡΡΡΠΎΠΌΡ ΡΠ»ΠΎΠ²Ρ ΠΈ ΠΎΠΊΠ°ΠΆΠ΅ΠΌΡΡ Π² Π΄Π²ΡΡ
ΡΠ°Π·Π»ΠΈΡΠΈΠΌΡΡ
ΡΠΎΡΡΠΎΡΠ½ΠΈΡΡ
.
2) Π‘ΠΎΡΡΠΎΡΠ½ΠΈΡ a ΠΈ b ΡΠ°Π·Π»ΠΈΡΠΈΠΌΡ. ΠΡΠ»ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ c ΠΈ d, ΠΈ ΠΈΠ· c Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ ΠΏΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ x Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ a, Π° ΠΈΠ· Π²Π΅ΡΠΈΡΠ½Ρ d Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ ΠΏΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ x Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ b, ΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ a ΠΈ b ΡΠ°Π·Π»ΠΈΡΠΈΠΌΡ.
ΠΡ Π½Π°ΡΠ»ΠΈ Π²ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΠΌΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ. Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΌ Π½Π°Π΄ΠΎ Β«ΡΡ Π»ΠΎΠΏΠ½ΡΡΡΒ» Π²ΡΠ΅ Π½Π΅ΡΠ°Π·Π»ΠΈΡΠΈΠΌΡΠ΅.
Π Π΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
Π Π΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²Π°ΡΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΏΡΡΠΌΡΡ ΡΠ²ΡΠ·Π°Π½Ρ Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠ°ΠΌΠΈ. ΠΠ²Π΅Π΄Π΅ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ:
β
β ΠΏΡΡΡΠΎΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ.
Ξ΅ β ΡΡΡΠΎΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅ ΡΠΎΠΆΠ΅ΡΠΆΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
ΠΡΡΡΡ A ΠΈ B ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ. L(A) ΠΈ L(B) β ΠΊΠΎΠ½ΡΠ΅ΡΠ½ΡΠ΅ ΡΠ·ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²Π°ΡΠΆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΡ.
ΠΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΡΠΌΠ΅Π½ΠΈΠΌΡΠ΅ ΠΊ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠΌ Π²Π°ΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠΎΠΆΠ½ΠΎ Π²ΡΠ΅ΡΡΠΈΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅, Π½ΠΎ Π²ΡΠ΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ Π²ΡΡΠ΅.
ΠΠΎΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² Π²ΠΈΠ΄Π΅ Ξ΅-ΠΠΠ.
ΠΠ°Π»Π΅ ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌ ΡΡΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠΌ ΡΠΏΡΡΠΊΠΎΠΌ ΠΈ ΡΡΡΠΎΠΈΠΌ Ξ΅-ΠΠΠ.
Π§ΡΠΎΠ±Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ Π Π΅Π³ΡΠ»ΡΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΡΠΎΠΈΠΌ Π΄Π»Ρ Ξ΅-ΠΠΠ, Π° ΠΏΠΎΡΠΎΠΌ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΈΠ· Ξ΅-ΠΠΠ ΠΠΠ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ.
ΠΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ (ΠΎΠ½ ΠΆΠ΅ ΠΌΠ°ΡΠΈΠ½Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ) Π½Π° ΡΠΈΡΡΠΎΠΌ Π‘
ΠΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡΠΈΠΊ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΡΡ Ρ Π³ΡΠΎΠΌΠ°Π΄Π½ΡΠΌΠΈ switch-case ΠΈ ΠΌΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡ
ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°Π».
Π ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΡΠΎ, Π½Π°ΡΠΈΠ½Π°Ρ ΠΏΠΈΡΠ°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°, Π·Π°Π΄ΡΠΌΡΠ²Π°Π»ΡΡ ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π΅Ρ ΠΊΡΠ°ΡΠΈΠ²ΠΎ, ΠΈΠ·ΡΡΠ½ΠΎ, ΡΠ°ΠΊ ΡΡΠΎΠ±Ρ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅ΡΡΡ Π±ΡΠ»ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΡΡΠΎ ΡΡ ΠΈΠΌΠ΅Π» Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° Π½Π΅ ΠΎΡΠΆΠΈΡΠ°Π»Π° Π²ΡΡ ΠΏΠ°ΠΌΡΡΡ ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΊΠ°ΠΊΠ°Π»Π° Π±Π°Π±ΠΎΡΠΊΠ°ΠΌΠΈ.
Π Π²ΠΎΡ ΡΡΡ Π½Π° ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠΈΡ
ΠΎΠ΄ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ, ΠΎΠ½ΠΈ ΠΆΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ (ΡΠ΅ ΡΠ°ΠΌΡΠ΅ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ
Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ
).
Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ΅ΡΠ΅Π· ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΠΊ Π½ΠΈΠΌ ΠΈ ΠΏΡΠΈΡΡΠ».
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΌΠ½Π΅ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Ρ 4-ΠΌΡ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ β Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ Π² ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Ρ Π°ΠΎΡΠΈΡΠ½ΡΡ Π½Π°ΠΆΠ°ΡΠΈΡΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π΄Π²ΡΡ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π½Π°ΠΉΠ΄Π΅Π½Π°.
ΠΠΎΡΡΠ½Ρ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅: Π΅ΡΡΡ 4 ΠΊΠ½ΠΎΠΏΠΊΠΈ β A, B, C, D ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ACDA. Π’ΠΎΠ³Π΄Π° ΠΏΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΌ Π½Π°ΠΆΠ°ΡΠΈΠΈ B, C, A, D, A, C, D, A, B, ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΆΠ΅ΡΡ Π»Π°ΠΌΠΏΠΎΡΠΊΡ ΠΏΠΎΡΠ»Π΅ 8-Π³ΠΎ (ΠΏΡΠ΅Π΄ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ) Π½Π°ΠΆΠ°ΡΠΈΡ. Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π·Π°Π΄Π°ΡΠ° ΠΏΡΠΎΡΡΠ° β ΠΈΡΠ΅ΠΌ Π²ΠΎ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΏΠΎΠ΄ΡΡΡΠΎΠΊΡ Β«ACDAΒ». ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠ»ΠΈ β Π·Π°ΠΆΠΈΠ³Π°Π΅ΠΌ Π»Π°ΠΌΠΏΠΎΡΠΊΡ. ΠΠΎ ΡΠ°ΡΠΈΡΡ Π² ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΊΠ°ΠΊΡΡ-Π½ΠΈΠ±ΡΠ΄Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ regexp Π½Π΅ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ. Π― ΡΡΠ²ΡΡΠ²ΠΎΠ²Π°Π» ΡΡΠΎ Π²ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΌΠΎΠΌΡ ΠΈ ΠΏΡΠΎΡΠ΅. Π’ΠΎΠ³Π΄Π° Ρ ΡΠ΅ΡΠΈΠ» ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΏΠΎΠΈΡΠΊΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
Π ΡΠ΅ΠΏΠ΅ΡΡ β Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΎΡΠΈΠΈ ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ:
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ΅ΡΡΠ° ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ² β ΠΎΠ½ΠΈ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π½Π°Π±ΠΎΡΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ, Π½Π°Π±ΠΎΡΠΎΠΌ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² (ΡΠΎΠ±ΡΡΠΈΠΉ) ΠΈ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ². Π’Π°Π±Π»ΠΈΡΠ° ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ² β ΡΡΠΎ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ΅ ΠΈΠ· ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ ΠΏΡΠΈΡΠ΅Π΄ΡΠ΅Π³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ.
ΠΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ, ΡΡΠΎ Ρ Π½Π°Ρ Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°Ρ Ρ 3 ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ ΠΈ 3 ΡΠΈΠ³Π½Π°Π»Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ. ΠΠΎ ΠΏΡΠΈΡ ΠΎΠ΄Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° Π°Π²ΡΠΎΠΌΠ°Ρ ΡΠΎΠ²Π΅ΡΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ Π² Π½ΠΎΠ²ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅.
ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΡΡΠΎ Π΄Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΊΠ°ΡΠ°ΡΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·ΡΠ°ΡΡΠ°ΡΡΡΡ Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΠΈ ΡΠΈΠ³Π½Π°Π»ΠΎΠ².
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ ΠΌΡ Π·Π°Ρ
ΠΎΡΠΈΠΌ Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ ΠΎΠ΄Π½ΠΎΡΠΈΠΏΠ½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ), ΡΠΎ ΡΡΠΎ ΠΏΠΎΡΠΎΠ΄ΠΈΡ ΠΊΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ΄Π΅. ΠΡΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ°ΠΊΠΈΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΠΎΡΡΠΈ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° Π±ΡΠ΄Π΅Ρ Π΄ΠΎΠΏΡΡΠ΅Π½Π° ΠΊΠ°ΠΊΠ°Ρ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΎΡΠΈΠ±ΠΊΠ° ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡΡ Π² Π°Π΄.
ΠΠ°ΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ ΡΡΡΡ Π΄Π²ΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ switch β ΡΡΠΎ Π²ΡΠ±ΠΎΡ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ (ΠΏΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ ΠΈ ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΡ) ΠΈ Π²ΡΠΏΠΎΠΌΠ½ΠΈΠΌ ΡΡΠΎ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ ΡΠ΄ΠΎΠ±Π½ΠΎ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ² Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠ³Π½Π°Π»Ρ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ β ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, Π° Π½Π° ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π² ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ Π°Π²ΡΠΎΠΌΠ°Ρ.
ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠΏΡΠΎΡΡΠΈΡΡ ΠΈΠΌΠ΅ΡΡΠΈΠΉΡΡ ΠΊΠΎΠ΄, Π·Π°Π΄Π°Π² ΡΠ°Π±Π»ΠΈΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ², ΠΈΠ·Π²ΠΈΠ½ΠΈΡΠ΅ Π·Π° ΡΠ°ΡΡΠΎΠ»ΠΎΠ³ΠΈΡ, ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ.
ΠΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°Π½ΡΠΉ Π²ΠΈΠ΄ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π°Π½Π½Π½ΡΡ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΊΠ°ΠΊ designated inits ΠΈ Π±ΡΠ» Π²Π²Π΅Π΄ΡΠ½ Π² Π‘99.
ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°Π΄ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ β ΠΏΠΈΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ doFSM_table:
Π§ΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠΎΠ»ΡΡΠΈΠ²ΡΠΈΠΉΡΡ Π°Π²ΡΠΎΠΌΠ°Ρ Π΅ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΌ ΠΈ ΠΏΡΠΈΠ΄Π°ΡΡ Π΅ΠΌΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΡΠΎΠΌΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΠΏΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² ΡΠ°Π±Π»ΠΈΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈ-ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π°ΠΌ:
ΠΠΎΠΎΠ±ΡΠ΅ ΡΠ»ΡΡΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ»Π³ΠΎ, Π½ΠΎ Π΄Π°Π½Π½Π°Ρ ΡΡΠ°ΡΡΡ ΡΡΠ°Π²ΠΈΡ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ΅Π»ΡΡ Π½Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ², Π° ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ΅ΡΠ΅Π½Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠ΅ ΠΈ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½Π΅Π΅ ΡΠ΅ΠΌ Β«Π² Π»ΠΎΠ±Β», ΠΏΡΠΈ ΡΡΠΎΠΌ Π½Π΅ ΠΏΡΠΈΠ±Π΅Π³Π°Ρ Π½ΠΈ ΠΊ ΠΊΠ°ΠΊΠΈΠΌ Π·Π°ΠΌΡΡΠ»ΠΎΠ²Π°ΡΡΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌ ΠΈΠ»ΠΈ ΡΠ·ΡΠΊΠ°ΠΌ.
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΠΏΠΎΠ»ΡΡΠΈΠ²ΡΡΡΡΡ Π΄Π»Ρ Π·Π°Π΄Π°ΡΠ° ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎΠ΄ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ Π½Π°ΡΠΈΠ½Π°Π»:
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΠΎΠ½Π΅ΡΠ½ΡΠΉ ΠΠ²ΡΠΎΠΌΠ°Ρ Π½Π° PHP
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΠΎΠ½Π΅ΡΠ½ΡΠΉ ΠΠ²ΡΠΎΠΌΠ°Ρ?
Π― ΠΎΠ±ΡΡΡΠ½Ρ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Ρ Ρ ΠΎΡΡ ΠΊΡΠΏΠΈΡΡ ΠΌΠΎΠ»ΠΎΠΊΠΎ, ΡΠΎΠ³Π΄Π° ΡΠ°ΠΊΠ°Ρ Π·Π°Π΄Π°ΡΠ° Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ:
ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ»Π°ΡΡ Π·Π° ΠΌΠΎΠ»ΠΎΠΊΠΎ
ΠΠΎΠ΅Π·Π΄ΠΊΠ° ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π΄ΠΎΠΌΠΎΠΉ
ΠΠ΅Π·Π΄Π΅. Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ (Π΅ΡΠ»ΠΈ Π½Π΅ Π²ΠΎ Π²ΡΠ΅Ρ ) Π±ΠΈΠ·Π½Π΅Ρ-ΠΏΡΠΎΡΠ΅ΡΡΠ°Ρ , ΡΡΠ΅Π±ΡΡΡΠΈΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π΄Π²ΡΡ Β«ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉΒ». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: ΡΠ»ΡΠΆΠ±Ρ Π΄ΠΎΡΡΠ°Π²ΠΊΠΈ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΊΡΠΏΠ»ΠΈ-ΠΏΡΠΎΠ΄Π°ΠΆΠΈ, ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°ΠΉΠΌΠ° ΠΈ Ρ.Π΄.
ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π΅ΡΠ»ΠΈ Π²Ρ Π½ΠΎΠ²ΠΈΡΠΎΠΊ ΠΈΠ»ΠΈ ΠΎΠΏΡΡ Ρ ΠΠΠ ΠΌΠ°Π» ΡΠΎΠ³Π΄Π° Π½Π΅ Π²ΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°ΠΉΡΠ΅ ΡΡΠ°ΡΡΡ ΠΊΠ°ΠΊ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠΎΠ½Π΅ΡΠ½ΡΠ΅ ΠΠ²ΡΠΎΠΌΠ°ΡΡ Π½Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Ρ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠ»Π°ΡΡΠΆΠ½ΡΠ΅ ΡΠ»ΡΠ·Ρ. ΠΠ°Π΄ΡΠΌΡΠ²Π°ΡΡΡΡ ΠΎ Π½ΠΈΡ Π»ΠΈΡΡ ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΡΡΠ°Π½Π½ΠΎΡΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ Π²ΡΠ΅ ΠΌΡΡΠ»ΠΈΠΌΡΠ΅ ΠΏΡΠ΅Π΄Π΅Π»Ρ.
ΠΠ°ΡΠ΅ΠΌ ΠΌΠ½Π΅ Π½ΡΠΆΠ΅Π½ ΠΠΎΠ½Π΅ΡΠ½ΡΠΉ ΠΠ²ΡΠΎΠΌΠ°Ρ?
ΠΠ΅ΡΠ½Π΅ΠΌΡΡ Π½Π°Π·Π°Π΄ ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ Ρ ΠΌΠΎΠ»ΠΎΠΊΠΎΠΌ. ΠΠ°ΡΠ΅ΠΌ ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡ ΠΈΠ΄Π΅Ρ ΠΎΡ Π Π΄ΠΎ Π―?. ΠΠ°Π³Π²ΠΎΠ·Π΄ΠΊΠ° Π² ΡΠΎΠΌ ΡΡΠΎ Π²ΡΠ΅Π³Π΄Π° ΡΡΠΎ-ΡΠΎ ΡΠ»ΡΡΠ°Π΅ΡΡΡ, ΠΌΠΎΠ³ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ, Π½Π΅Π΄ΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π΄Π»Ρ Π½Π°Ρ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅:
ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ»Π°ΡΡ Π·Π° ΠΌΠΎΠ»ΠΎΠΊΠΎ
ΠΠΎΠ΅Π·Π΄ΠΊΠ° ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π΄ΠΎΠΌΠΎΠΉ
ΠΠΎΠΆΠ½ΠΎ Π΄Π°ΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ, Π½ΠΎ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΡΡΡ Ρ Π²Π°ΡΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ . Π’Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΆΠ°ΡΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ «ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΡΠΌΠ΅Π½Ρ ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈ» ΠΈ «ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΡΠΌΠ΅Π½Ρ ΠΏΠΎΠΊΡΠΏΠΊΠΈ ΠΌΠΎΠ»ΠΎΠΊΠ°» ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΏΡΠΎΡΡΠΎ Π² Β«ΠΡΠΌΠ΅Π½Π°Β».
ΠΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ?
milk = 0 Π½Π΅Ρ ΠΌΠΎΠ»ΠΎΠΊΠ°, milk = 1 Ρ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΠΌΠΎΠ»ΠΎΠΊΠΎ
money = ΠΊΠΎΠ»-Π²ΠΎ Π΄Π΅Π½Π΅Π³ Π² ΠΊΠ°ΡΠΌΠ°Π½Π΅
price = ΡΠ΅Π½Π° ΠΌΠΎΠ»ΠΎΠΊΠ°
stock_milk = ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΌΠΎΠ»ΠΎΠΊΠ° Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅
store_open = 0 ΠΌΠ°Π³Π°Π·ΠΈΠ½ Π·Π°ΠΊΡΡΡ, = 1 ΠΎΡΠΊΡΡΡ
gas = Π±Π΅Π½Π·ΠΈΠ½ ΠΌΠΎΠ΅ΠΉ ΠΌΠ°ΡΠΈΠ½Ρ
Π’Π°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ:
Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π°
ΠΠΎΠ³Π΄Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄?
ΠΠΎΠ΅Π·Π΄ΠΊΠ° Π·Π° ΠΌΠΎΠ»ΠΎΠΊΠΎΠΌ
ΠΠΎΠ³Π΄Π° milk = 0 ΠΈ gas > 0
ΠΡΠΌΠ΅Π½Π° ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈ (ΡΡΠΎ ΠΊΠΎΠ½Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ°)
store_open = 1 ΠΈ stock_milk > 0
store_open = 0 ΠΈΠ»ΠΈ stock_milk = 0
ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ»Π°ΡΡ Π·Π° ΠΌΠΎΠ»ΠΎΠΊΠΎ
(ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ milk +1)
Π½Π΅Π²Π΅ΡΠ½ΠΎ, Π° money (Π²ΠΈΠ΄ΠΈΠΌ ΠΏΡΠΎΠ±Π΅Π»Ρ) ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ.
ΠΡΡΠ°Ρ, ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΌΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΠΌ Π²ΡΠ΅ ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠ΅.
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°
ΠΡΠ»ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π²Π΅ΡΠ½Π°, ΡΠΎ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΊΡΠ°Π½.
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠ²ΡΡ Π·Π°Π΄Π°ΡΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ Π½Π°ΡΠ½Π΅ΠΌ Ρ Π½Π°ΡΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ: milk = 0, money = 999 ΠΈ gas = 10 ΠΈ Π½Π°ΠΆΠΌΠ΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ «Create a new job«. Π’Π΅ΠΏΠ΅ΡΡ Π·Π°Π΄Π°ΡΠ° Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π° ΠΈ ΠΏΠ΅ΡΠ΅ΡΠ»Π° ΠΈΠ· ΡΠΎΡΡΠΎΡΠ½ΠΈΡ «ΠΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ»(1) Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ » ΠΡΠΏΠΈΡΡ ΠΌΠΎΠ»ΠΎΠΊΠΎ»(2).
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, store_open=1 ΠΈ stock_milk=1 ΠΈ Π½Π°ΠΆΠΌΠ΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Set field values (ΠΎΠ½Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π½ΠΎΠ²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΡ Π²ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ).
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΡ ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ
Π’Π΅ΠΎΡΠΈΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ. ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ
ΠΡΠΎ Π΄ΠΎ ΠΏΡΠ΅Π΄Π΅Π»Π° ΡΠΏΡΠΎΡΠ΅Π½Π½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° ΠΈΠΌΠ΅ΡΡΠ°Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΆΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΡΠ΅ΠΌΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΠΌΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΠΠ£, ΠΏΠΎΡΡΠΎΡΠ½Π½Π°Ρ ΠΏΠ°ΠΌΡΡΡ, ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΡΠΌΠΈ ΡΠ΄ΡΠ°ΠΌΠΈ Π² ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΠΏΡΠΎΡΡΠΎΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ, ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΡΠ°ΡΒΡΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΈ Π»Π΅Π³ΠΊΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΠΈΠ»ΠΈ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΠ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ Π²Π΅ΡΠΈ ΠΊΠ°ΠΊ, ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π»Π΅ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ, ΠΠ Π² ΠΈΠ³ΡΠ°Ρ ΠΈ ΡΠ΄.
Π£ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ² ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ², ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠ°, ΡΡΠ°ΡΡΠΎΠ²ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈ Π·Π°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅.
Π’Π°Π±Π»ΠΈΡΠ° ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ² β Π Π½Π΅ΠΉ Ρ ΡΠ°Π½ΡΡΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°. ΠΡΠΎΡΡΠ΅ΠΉΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΊΠ°ΠΊ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ².
ΠΠ΄Π΅ΡΡ Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΈΠ· ΡΠΎΡΡΠΎΡΠ½ΠΈΡ 0 Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ 1 ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΠ°ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ, Π΅ΡΠ»ΠΈ Ρ Π½Π°Ρ Π±ΡΠ΄Π΅Ρ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ‘a’, ΠΈΠ· ΡΠΎΡΡΠΎΡΠ½ΠΈΡ 1 Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ 2, Π΅ΡΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» ‘b’.
Π’Π΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ β ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π°Π²ΡΠΎΠΌΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
Π‘ΡΠ°ΡΡΠΎΠ²ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ β ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΡΠΊΡΠ΄Π° ΠΠ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΡ.
ΠΠ°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ β ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ Π² ΠΊΠΎΡΠΎΡΡΡ Π°Π²ΡΠΎΠΌΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠ΅ΠΏΠΎΡΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π² ΠΈΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠ²Π΅ΡΠ³Π°Π΅Ρ.
ΠΠ΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ (deterministic finite automaton)
ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ ΠΠ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ΄Π½ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π² ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡΡ.
ΠΠ΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ β Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΎΠ΄Π½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°, ΡΠΎ Π΅ΡΡΡ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ 1 Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄Π²Π° ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ.
ΠΠ΅Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ (nondeterministic finite automaton)
ΠΠΠ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΠΠ, ΠΏΡΠΎΡΡΠΎ Π² Π½Π΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ°ΠΊ ΡΠΊΠ°Π·Π°ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Ρ Π°Ρ, Π² Π²ΠΈΠ΄Π΅ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ², Π½Π΅Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΠΈΠ² ΡΠΎΡΡΠΎΡΡΠΈΠΉ ΠΈΠ· ΡΡΡΡΠΊΡΡΡ Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΡΠ°Π½ΠΈΡΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅.
Π‘Π²ΠΎΠ±ΠΎΠ΄Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ (ΡΠΏΡΠΈΠ»ΠΎΠ½ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ) β ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ Π±Π΅Π· ΡΡΠ΅Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°.
ΠΠ΅Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ β Π½ΠΎΠ»Ρ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π² ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΡ .
ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ β Π² ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΠΠ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΡ .
ΠΠ°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ Π΄Π²ΠΎΠΉΠ½ΡΠΌ ΠΊΡΡΠ³ΠΎΠΌ.
Π ΡΡΠ°ΡΡΠΎΠ²ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Ρ Π½Π°Ρ ΡΠ΅ΠΊΡΡΠΈΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ <1>, ΠΏΡΠΈ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌ ΡΠΈΠΌΠ²ΠΎΠ»Π΅ ‘b’ Ρ Π½Π°Ρ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, ΠΏΠΎΠΉΡΠΈ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ 1 ΠΈ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ 2, ΡΠΎ Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° ‘b’ ΡΠ΅ΠΊΡΡΠΈΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ <1, 2>.
Π‘Π²ΠΎΠ±ΠΎΠ΄Π½ΡΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠΌ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΠΏΡΠ½ΠΊΡΠΈΡΠ½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ.
ΠΠ΄Π΅ΡΡ Π²ΠΈΠ΄Π½ΠΎ Π΄Π²Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΠΈΠ· ΡΡΠ°ΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, ΡΠΎ Π΅ΡΡΡ Π±Π΅Π· ΡΡΠ΅Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΌΡ ΡΡΠ°Π·Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π² ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ <2, 4>.
ΠΠ»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΠΠ Π² ΠΠΠ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π’ΠΎΠΌΠΏΡΠΎΠ½Π°.
ΠΡΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΠΠ Π² ΠΠΠ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΠΠ ΠΈ Π΄Π»Ρ Π΅Π³ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΡΠΆΠΎΠ·ΠΎΠ²ΡΠΊΠΎΠ³ΠΎ.
ΠΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ Ρ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΡΡ (pushdown automaton)
ΠΡΠΎ ΡΠΎΡ ΠΆΠ΅ ΠΠ, Π½ΠΎ Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΠ΅ΠΊΠ°. Π’Π΅ΠΏΠ΅ΡΡ Π΄Π»Ρ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π½ΡΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΊΡΠΎΡΠΎΠ², ΡΠΈΠΌΠ²ΠΎΠ» ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ· ΡΡΠ΅ΠΊΠ° ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΡΠ΅ΠΊ.
ΠΠΠΠ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π² ΡΠ°ΠΊΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ , Π³Π΄Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈ ΡΠ°Π·Π±ΠΎΡΠ΅ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΡΡΠ΅ΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΡΠΊΠΎΠ±ΠΎΠΊ Π² ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ . Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΠ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Π΅Π΄Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΡΠ΅ΠΊΠ° (Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, ΡΡΠΎ ΠΏΠ°ΠΌΡΡΡ ΡΠΎΠΆΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½Π°).
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΈΠ· ΡΡΠ΅ΠΊΠ° β ΠΏΡΠΈ Π»ΡΠ±ΠΎΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ ΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ» Π²ΡΡΠΎΠ»ΠΊΠ½ΡΡΡ, Π΅ΡΠ»ΠΈ Π½Π° Π²Π΅ΡΡΠΈΠ½Π΅ ΡΡΠ΅ΠΊΠ° Π½Π΅ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°, ΡΠΎ ΠΎΠ½ ΠΈ Π½Π΅ Π²ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΡΡ. Π’Π°ΠΊ ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» Π½ΡΠΆΠ½ΠΎ ΠΎΡΡΠ°Π²ΠΈΡΡ Π² ΡΡΠ΅ΠΊΠ΅, ΡΠΎ ΠΎΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΡΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ.
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΡΠ΅ΠΊ β ΠΏΡΠΈ Π»ΡΠ±ΠΎΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ ΡΠ΅ΡΠ°Π΅Ρ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΡΠ΅ΠΊ.
ΠΡΠΎΡ ΠΠΠΠ ΠΏΠΎΠ΄ΡΡΠΈΡΡΠ²Π°Π΅Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΡ ΡΠΊΠΎΠ±ΠΎΠΊ, Π·Π° ΡΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈΠ· ΡΡΠ΅ΠΊΠ°.
ΠΠΠΠ Π½Π΅ ΡΠ°Π²Π΅Π½ ΠΠΠΠ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ΄Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ Π² Π΄ΡΡΠ³ΠΎΠ΅, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΠΠΠ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΠ΅ΡΠ΅Π΄ ΠΠΠΠ.
ΠΠ°ΡΠΈΠ½Π° Π’ΡΡΡΠΈΠ½Π³Π° (Turing machine)
Π‘Π°ΠΌΠ°Ρ ΠΌΠΎΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ΠΈΠ· ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ , Π΅Π³ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ΅ΡΠ΅Π΄ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π² Π»Π΅Π½ΡΠ΅ Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊ Ρ ΠΎΡΠ΅Ρ. Π Π½Π΅ΠΌ Π½Π΅Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ². Π£ΠΌΠ΅Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΠ, ΠΠΠΠ.
ΠΠ΅Π½ΡΠ° β ΡΡΠΎ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π² ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠ³ΡΡ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ Π·Π° ΡΡΠ΅Ρ Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π½Π°Π΄ ΡΡΠ΅ΠΉΠΊΠΎΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΡΠ°Π½Π΅Π΅ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΡ Π²Ρ ΠΎΠ΄Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ.
Π¨Π°Π±Π»ΠΎΠ½: ΡΡΠΈΡΠ°Π½ΡΠΉ_ΡΠΈΠΌΠ²ΠΎΠ»_Ρ_Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ/Π·Π°ΠΏΠΈΡΠ°Π½ΡΠΉ_ΡΠΈΠΌΠ²ΠΎΠ»; ΡΡΠΎΡΠΎΠ½Π°_ΡΠΌΠ΅ΡΠ΅Π½ΠΈΡ_Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ. ΠΊΡΠ°Ρ Π»Π΅Π½ΡΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΡΡ ‘_’.
ΠΡΠ° ΠΠ’ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ Π΄Π²ΠΎΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°, Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΡΡΠΎΠΈΡ ΡΠ»Π΅Π²Π°, ΡΠ°ΠΌ Π³Π΄Π΅ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Π»Π΅Π½ΡΠ°.
ΠΠΠ’ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ ΠΠΠ’, ΡΠ°ΠΊ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠΎΠΆΠ΅ Π½Π΅ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ.
Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π’ΡΡΡΠΈΠ½Π³Π° (universal Turing machine)
ΠΠ°ΡΠΈΠ½Π° ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΠΎΠΆΠ΄Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ Π’ΡΡΡΠΈΠ½Π³Π°, ΠΏΠΎΠ»ΡΡΠ°Ρ Π½Π° Π²Ρ ΠΎΠ΄Π½ΡΡ Π»Π΅Π½ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ.
ΠΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ: Π³Π΄Π΅ ΠΌΡ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ
ΠΡΠΈΠ²Π΅Ρ, ΠΌΠ΅Π½Ρ Π·ΠΎΠ²ΡΡ ΠΠ½ΡΠΎΠ½ Π‘ΡΠ±Π±ΠΎΡΠΈΠ½, Ρ Π²ΡΠΏΡΡΠΊΠ½ΠΈΠΊ ΠΊΡΡΡΠ° Β«ΠΠΈΠ΄Π» ΡΡΠΎΠ½ΡΠ΅Π½Π΄-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΒ» Π² Π―Π½Π΄Π΅ΠΊΡ.ΠΡΠ°ΠΊΡΠΈΠΊΡΠΌΠ΅. ΠΠ΅ ΡΠ°ΠΊ Π΄Π°Π²Π½ΠΎ ΠΌΡ Ρ Π½Π°ΡΡΠ°Π²Π½ΠΈΠΊΠΎΠΌ ΠΊΡΡΡΠ° ΠΠ°Ρ Π°ΡΠΎΠΌ ΠΠ²ΡΠ°ΡΠΎΠ²ΡΠΌ ΠΏΡΠΎΠ²Π΅Π»ΠΈ Π²Π΅Π±ΠΈΠ½Π°Ρ, ΠΏΠΎΡΠ²ΡΡΡΠ½Π½ΡΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠ°ΠΌ ΠΈ ΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ΅Π±ΠΈΠ½Π°Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΌ, Π° ΠΏΠΎΡΠΎΠΌΡ ΠΏΠΎ Π΅Π³ΠΎ ΡΠ»Π΅Π΄Π°ΠΌ Ρ Π½Π°ΠΏΠΈΡΠ°Π» ΡΡΠ°ΡΡΡ Π΄Π»Ρ Medium Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡΡ Π·Π°ΠΏΠΈΡΡ Π²Π΅Π±ΠΈΠ½Π°ΡΠ°. ΠΠ΄Π½Π°ΠΊΠΎ ΠΌΡ Ρ ΠΠ°Ρ Π°ΡΠΎΠΌ ΡΠ΅ΡΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π΅ΡΡ ΠΊΠΎΠ΅-ΡΡΠΎ: ΠΏΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ Π½Π° ΡΡΡΡΠΊΠΈΠΉ ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΡΡΠ°ΡΡΡ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π½ΠΈΠΊΡΠ΄Π° Π½Π΅ Ρ ΠΎΠ΄ΠΈΡΡ ΠΈ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π΅Ρ Π·Π΄Π΅ΡΡ, Π½Π° Π₯Π°Π±ΡΠ΅. Π Π°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Ρ ΠΏΡΠ΅Π΄ΡΡΡΠΎΡΠΈΠ΅ΠΉ β ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°ΡΠ½ΡΠΌ ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΌΠΈΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ².
ΠΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ Ρ ΡΡΠ°ΡΡΠ»ΠΈΠ²ΡΠΌ ΠΈ Π³ΡΡΡΡΠ½ΡΠΌ ΠΠ°ΡΡΠΊΠΎΠΉ
ΠΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΡ
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π΄Π°Π΄ΠΈΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅: ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ (finite-state machine, FSM) β ΡΡΠΎ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡ, ΠΌΠΎΠ΄Π΅Π»Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ²ΡΠΎΠΌΠ°Ρ ΡΠΌΠ΅Π΅Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² Π΄ΡΡΠ³ΠΎΠ΅ Π² ΠΎΡΠ²Π΅Ρ Π½Π° Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π°ΡΡΡΡ Π½Π° Π²Ρ ΠΎΠ΄; ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠΌ. FSM ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΏΠΈΡΠΊΠΎΠΌ Π΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ, Π½Π°ΡΠ°Π»ΡΠ½ΡΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΠΈ ΠΈΠ½ΠΏΡΡΠ°ΠΌΠΈ, Π·Π°ΠΏΡΡΠΊΠ°ΡΡΠΈΠΌΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ.
ΠΠΎΡ ΠΈ Π²ΡΡ β Ρ Π½Π°ΡΠ΅Π³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠ° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ, ΠΎΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π° Π΅ΡΡ Ρ Π½Π΅Π³ΠΎ Π΅ΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π°, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ. ΠΠ»Ρ Π½Π°Π³Π»ΡΠ΄Π½ΠΎΡΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ ΠΊΠΎΡΠ° ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΠ°ΡΡΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΠ°ΡΡΠ»ΠΈΠ²ΡΠΌ ΠΈΠ»ΠΈ Π³ΡΡΡΡΠ½ΡΠΌ. ΠΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ ΠΠ°ΡΡΠΊΠ° ΡΡΠ°ΡΡΠ»ΠΈΠ². ΠΠΎΠ³Π΄Π° Π²Ρ ΡΡ ΠΎΠ΄ΠΈΡΠ΅, ΠΎΠ½ Π³ΡΡΡΡΠΈΡ, Π° ΠΊΠΎΠ³Π΄Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΠ΅ΡΡ β ΡΠ½ΠΎΠ²Π° ΡΡΠ°ΡΡΠ»ΠΈΠ². ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΠ·ΡΠ°Π·ΠΈΡΡ, ΡΡΠΎ ΠΊΠΎΡΠΊΠ°ΠΌ Π½Π°ΠΏΠ»Π΅Π²Π°ΡΡ, Π΄ΠΎΠΌΠ° Π²Ρ ΠΈΠ»ΠΈ Π½Π΅Ρ, Π½ΠΎ Π½Π°Ρ ΠΠ°ΡΡΠΊΠ° Π½Π΅ ΡΠ°ΠΊΠΎΠΉ. ΠΡ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΡΠΆΠ΅ Π²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ²ΡΠ·Ρ:
ΠΡΠΎ ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠ½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ. Π ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ² ΠΈ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Ρ Π½ΡΠ»Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΡΠΈΠΌ ΠΏΠ°ΡΡ Π·Π°Π΄Π°Ρ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠ°. ΠΠΏΠ΅ΡΡΠ΄!
ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
FSM ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΡ ΡΠ΅ΡΠ°ΡΡ ΡΠ΅ ΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°. ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ²:
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π±ΠΈΠ½Π°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½Π°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ. ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ ΠΈΠ»ΠΈ ΠΏΠΈΡΠΈΡΠ΅ ΠΊΠΎΠ΄ ΠΏΠΎ Ρ ΠΎΠ΄Ρ ΡΡΠ΅Π½ΠΈΡ. ΠΡΠ΄Π΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΠΈΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ. ΠΡΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°Ρ, ΡΠ΅Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ β ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ Π»ΠΈ Π½Π΅ΠΊΠ°Ρ ΡΡΡΠΎΠΊΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΌΡ ΡΠ·ΡΠΊΡ, ΠΈ Π»ΠΈΠ±ΠΎ Π΄ΠΎΠΏΡΡΡΠΈΡΡ, Π»ΠΈΠ±ΠΎ ΠΎΡΠΊΠ»ΠΎΠ½ΠΈΡΡ Π΅Ρ. ΠΡ ΡΠΆΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π°Π»ΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π΅ΡΡ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°:
ΠΠΎΡ Π½Π°Ρ Π°Π²ΡΠΎΠΌΠ°Ρ, Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π°ΠΊΡΠ΅ΠΏΡΠΎΡ Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ:
Π£ Π½Π°Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ Π°Π²ΡΠΎΠΌΠ°Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ»Π°ΡΡΠΎΠ², ΡΠΏΠΎΡΠΎΠ±Π½ΡΠΉ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΠ²ΠΎΠΈΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠΌ. Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΡΠΌΡΡ.
Π‘Ρ Π΅ΠΌΠ° Π°ΠΊΡΠ΅ΠΏΡΠΎΡΠ° Π±ΠΈΠ½Π°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°
ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ, ΠΈ Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈΠΌΠ΅ΡΡΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ Π΄Π»Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² 0 ΠΈ 1. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΊ:
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ! ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π½Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ β ΠΊΠΎΠ³Π΄Π° Π°Π²ΡΠΎΠΌΠ°Ρ Π²ΡΡΡΠ΅ΡΠ°Π΅Ρ Π½Π΅ ΠΏΡΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π² Π°Π»ΡΠ°Π²ΠΈΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ», ΠΎΠ½ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ.
Π‘Π»ΠΎΠΆΠ½Π°Ρ ΡΠΎΡΠΌΠ°
ΠΡΠΈΠΌΠ΅Ρ Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΎΠΉ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° β Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΡΠΉ. ΠΡΡΠ΄ Π»ΠΈ Π²Π°ΠΌ ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠ΄ΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ ΡΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠ΄ΡΡΡΡ Π²ΠΎΠΎΠ±ΡΠ΅. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ β ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠΎΡΠΌΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ Π² UI-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ FSM. ΠΠΎΠ΄ Π°Π²ΡΠΎΠΌΠ°ΡΠ° Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π½Π° CodeSandbox, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π½Π΅ΠΌΡ ΠΈΠ»ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π΅Π³ΠΎ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π² React:
Π‘ΡΡΡΠΊΡΡΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
App.js ΠΈ index.js Π½Π΅ ΡΡΠ΅Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. FSM.js Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π½ΠΎΠ²ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ FSM, Π½Π°ΠΏΠΈΡΠ΅ΠΌ Π΅Ρ:
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΌΡ ΡΠ΄Π°Π»ΠΈΠ»ΠΈ Π°Π»ΡΠ°Π²ΠΈΡ ΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ. Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ:
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ΄ Π½Π° Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Ρ ΠΠ°ΡΡΠΊΠΎΠΉ. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» test.js :
Π’Π΅ΠΏΠ΅ΡΡ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ node test.js (ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΠ΅ΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΡΠ°ΠΉΠ»ΠΎΠ²). ΠΡΠ²ΠΎΠ΄ Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
ΠΠ²ΡΠΎΠΌΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ! ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΎΡΡΠ΅Π°Π³ΠΈΡΡΠ΅ΠΌ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π°ΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΠ°ΡΡΠΊΠΈ:
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Π°Π²ΡΠΎΠΌΠ°Ρ ΡΠ½ΠΎΠ²Π°.
ΠΠ°ΡΡΠΊΠ° ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΠ΅Π³Π΄Π° ΡΡΠ°ΡΡΠ»ΠΈΠ², ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΡ Π½Π΅ Π±ΡΠΎΡΠ°Π΅ΠΌ Π΅Π³ΠΎ. ΠΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ β Π³ΡΡΡΡΠ½ΠΎΠ΅, ΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΡΠΈΠ³Π³Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΡ, ΠΈ ΠΊΠΎΡ ΡΠ½ΠΎΠ²Π° ΡΡΠ°ΡΡΠ»ΠΈΠ².
ΠΠΎΡ ΠΎΠΆΠ΅, Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ. ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅: ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π°Π½ΠΊΠ΅ΡΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½Ρ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ. ΠΠΎΠΏΡΡΡΠΈΠΌ, ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠ·Π½Π°ΡΡ ΠΈΠΌΡ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ β ΡΡΡΠ΄Π΅Π½Ρ, ΠΌΡ ΡΠΏΡΠΎΡΠΈΠΌ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ΅ ΠΎΠ½ ΡΡΠΈΡΡΡ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΏΡΠΎΡΠΈΠΌ, Π³Π΄Π΅ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ Ρ ΡΡΠ°ΠΏΠ° Education / Work ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΠΊ ΡΡΠ°ΠΏΡ Personal, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΡ ΡΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΠΈΠΌΡ. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π°Π½ΠΊΠ΅ΡΡ ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΈΠ· Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π·Π°Π½ΡΡΠΎΡΡΠΈ.
ΠΠ΅Π±ΠΎΠ»ΡΡΠ°Ρ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°, ΡΡΠΎΠ±Ρ ΡΡΠ°Π»ΠΎ ΠΏΠΎΠ½ΡΡΠ½Π΅Π΅:
ΠΠ²ΡΠΎΠΌΠ°Ρ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠΉ Π½Π°ΡΡ Π°Π½ΠΊΠ΅ΡΡ
ΠΠΎΠ³Π΄Π° ΡΡΠ°Π»ΠΎ ΡΡΠ½ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠΎΠΎΡΠ½ΠΎΡΡΡΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. ΠΠ΅ΡΠ²ΠΎΠ΅: Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ:
Π€Π°ΠΉΠ» questionnaireMachine.js ΡΠΎΠ·Π΄Π°ΡΡ ΠΈ ΡΠΊΡΠΏΠΎΡΡΠΈΡΡΠ΅Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Questionnaire FSM:
Questionnaire FSM
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠ°Π³ΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ»ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° β ΡΠ°ΠΌΠΎΠΉ Π°Π½ΠΊΠ΅ΡΡ. ΠΡ ΡΠ°Π·Π΄Π΅Π»ΠΈΠΌ Π΅Π³ΠΎ Π½Π° ΡΡΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°:
Π’Π΅ΠΏΠ΅ΡΡ Π·Π°ΠΉΠΌΡΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ ΠΊΠ°ΡΡΠΎΡΠΊΠΈ:
ΠΠ½ΠΎΠΏΠΊΠΈ Π² Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΠ°ΠΊ listener Π΄Π»Ρ ΡΠΎΠ±ΡΡΠΈΡ ΠΊΠ»ΠΈΠΊΠ°. ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ ΠΌΡ Π·Π΄Π΅ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ FSM: ΡΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π°Π½ΠΊΠ΅ΡΡ ΡΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ uiState ΠΈ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ Π½ΡΠΆΠ½ΡΡ ΠΊΠ°ΡΡΠΎΡΠΊΡ.
ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΌΠ΅Π»ΠΎΡΡ β ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΡΠ΅Π»ΠΎΠ°Π΄Π΅ΡΠ°. ΠΠ΄Π΅ΡΡ Π½Π΅Ρ Π½ΠΈΡΠ΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ, ΠΏΡΠΎΡΡΠΎ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΎΡΠΊΠ°:
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π°Π½ΠΊΠ΅ΡΡ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΡΠ½Π΅Π²ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΎ ΡΡΠΈΠ»ΡΠΌΠΈ:
Π ΠΈΡΠΎΠ³Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ Π½Π΅ΡΡΠΎ ΠΏΠΎΡ ΠΎΠΆΠ΅Π΅ Π½Π° ΡΡΠΎ. ΠΡΠ»ΠΈ Π΄Π°, Π²ΠΎΠ·ΡΠ°Π΄ΡΠΉΡΠ΅ΡΡ β Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π°Π½ΠΊΠ΅ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠ°! ΠΡΠ»ΠΈ ΡΡΠΎ-ΡΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΡΡΠ°Π²Π½ΠΈΡΠ΅ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ ΡΡΠΎΠΉ ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΠ΅. Π£ Π²Π°Ρ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° ΠΏΠΎΠ»ΡΡΠΈΡΡΡ Π½Π°Π²Π΅ΡΡΡΠ°ΡΡ ΡΠΏΡΡΠ΅Π½Π½ΠΎΠ΅.
ΠΠ½ΠΊΠ΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ, ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π° Π½Π° Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈ ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ»ΠΎΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ Π΅Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ Π»Π΅Π³ΠΊΠΎ ΡΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ΄Π½Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Π»ΡΠ±ΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² β ΡΡΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΡΡ ΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π Π΅ΡΡ ΠΊΠΎΠ΅-ΡΡΠΎ. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ FSM Ρ Π½ΡΠ»Ρ β ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΎΠΏΡΡ, Π΄Π»Ρ ΡΠ°Π±ΠΎΡΠΈΡ Π·Π°Π΄Π°Ρ Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³ΠΎΡΠΎΠ²ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ XState. Π’Π°ΠΌ Π΅ΡΡΡ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, ΠΈ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ (ΠΈΡ , Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄Π°ΠΆΠ΅ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ).