βΊ Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΠΈΠ³ΡΡ.
ΠΠ±Π·ΠΎΡ ΠΈΠ³ΡΡ Connect 4
ΠΡΠ»ΠΈ Π²Ρ Π½ΠΈ ΡΠ°Π·Ρ Π½Π΅ ΠΈΠ³ΡΠ°Π»ΠΈ Π² Connect 4, Π΄Π°Π²Π°ΠΉΡΠ΅ Π²ΠΊΡΠ°ΡΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΅Π΅ ΠΏΡΠ°Π²ΠΈΠ»Π°. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠ°Ρ ΠΈΠ³ΡΠ°, ΠΏΠΎΡ ΠΎΠΆΠ°Ρ Π½Π° ΠΊΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ; Π²Π°ΡΠ° ΡΠ΅Π»Ρ β ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π² ΡΡΠ΄, ΡΡΠΎΠ»Π±Π΅Ρ ΠΈΠ»ΠΈ ΠΏΠΎ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ 4 ΡΠΈΡΠΊΠΈ. ΠΠ³ΡΠ° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π° ΠΏΠΎΠ»Π΅ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 7Ρ 6 ΡΡΠ΅Π΅ΠΊ. Π€ΠΈΡΠΊΠΈ β ΡΡΠΎ ΡΠΈΠ»ΠΈΠ½Π΄ΡΡ, ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π½Π° ΡΠ°ΡΠΊΠΈ. ΠΠ° ΡΠΈΡ. 15.1 ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π΄ΠΎΡΠΊΠ° Π΄Π»Ρ ΠΈΠ³ΡΡ Π² Connect 4.
Π ΠΈΡ. 15.1. ΠΠ³ΡΠΎΠ²Π°Ρ Π΄ΠΎΡΠΊΠ° Connect 4 ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ 7Ρ 6 ΡΡΠ΅Π΅ΠΊ
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ ΠΈΠ³ΡΡ Connect 4 Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΄ΠΎΡΠΊΠ° ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎ, Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ΅ΠΊΡΠΈΡ (ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ΅ΠΉΠΊΠ°ΠΌΠΈ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ). Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΈΠ³ΡΡΡ ΠΏΠΎ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΡΠΊΠΈ ΠΎΠ΄Π½Ρ Π·Π° Π΄ΡΡΠ³ΠΎΠΉ. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠΈΠ»ΡΠ½ΠΎ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΈΠ³ΡΡ. ΠΠ° ΡΠΈΡ. 15.2 ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΈΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Connect 4 ΠΏΠΎΡΠ»Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Ρ ΠΎΠ΄ΠΎΠ².
Π ΠΈΡ. 15.2. Π‘ΡΠΎΠ»Π±ΡΡ Π² ΠΈΠ³ΡΠ΅ Connect 4 Π·Π°ΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΊΡΡΠ³Π»ΡΠΌΠΈ ΡΠΈΠ³ΡΡΠΊΠ°ΠΌΠΈΠ ΠΈΡ. 15.3. ΠΠ³ΡΠ° Connect 4 Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ· ΠΈΠ³ΡΠΎΠΊΠΎΠ² ΡΠ΄Π°Π΅ΡΡΡ Β«ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡΒ» ΡΠ΅ΡΡΡΠ΅ ΡΠΈΠ³ΡΡΠΊΠΈ
ΠΠ³ΡΠ° Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΈΠ³ΡΠΎΠΊΠΎΠ² Π²ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΠΏΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ, Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ ΠΈΠ»ΠΈ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ ΡΠ΅ΡΡΡΠ΅ ΡΠΈΡΠΊΠΈ. ΠΠ΄Π΅ΡΡ ΡΠ°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΊΡΠ΅ΡΡΠΈΠΊΠ°Ρ -Π½ΠΎΠ»ΠΈΠΊΠ°Ρ , Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Π½ΠΈΡΡΡ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ ΠΈΠ·-Π·Π° Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΡΠΈΡΠ»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΠΏΠΎΠ±Π΅Π΄ΠΈΡΡ. ΠΠ° ΡΠΈΡ. 15.4 ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Β«ΠΏΠΎΠ±Π΅Π΄Π°Β» Π² Connect 4.
Π ΠΈΡ. 15.4. Π ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ (0,0) Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΈ Π²ΡΠΈΠ³ΡΡΡΠ½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ...Π ΠΊΠΎΠΏΠΈΠ»ΠΊΡ ΠΠ³ΡΠΎΠΊΠ°
Π‘ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ, Π² ΠΈΠ³ΡΠ΅ Connect 4 Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠΈΠ³ΡΠ°ΡΡ Π²ΡΠ΅Π³Π΄Π°, Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΠΈΠ³ΡΠΎΠΊΠ°, Π΅ΡΠ»ΠΈ Π΄Π΅Π»Π°Π΅ΡΠ΅ Ρ ΠΎΠ΄ ΠΏΠ΅ΡΠ²ΡΠΌ.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈΠ³ΡΡ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³ΡΡ Connect 4 Π±ΡΠ΄Π΅Ρ Π½Π΅ ΡΠ°ΠΊΠΈΠΌ ΡΠ»ΠΎΠΆΠ½ΡΠΌ Π·Π°Π½ΡΡΠΈΠ΅ΠΌ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π·ΠΎΠ±ΡΠ΅ΡΠ΅ Π²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΡΠ°ΠΏΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊ:
βΊ Π³ΡΠ°ΡΠΈΠΊΠ° ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ;
βΊ ΡΠ΅ΡΠ΅Π²ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅.
βΊ ΠΈΠ³ΡΠΎΠ²Π°Ρ Π»ΠΎΠ³ΠΈΠΊΠ°;
Π ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π°Ρ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π²ΡΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΡΠ°ΠΏΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ³ΡΡ.
ΠΡΠ°ΡΠΈΠΊΠ° ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΠΈΠ³Ρ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Connect 4 Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ. ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΈ β ΡΡΠΎ ΡΠΈΠ³ΡΡΡ ΠΈ Π΄ΠΎΡΠΊΠ°. ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΡΠ°ΡΡΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎ, ΠΊΠΎΠΌΡ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ Ρ ΠΎΠ΄. Π Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠΎΠΊΠ° ΡΡΠ°ΡΡΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Β«Waiting for player\'s moveΒ» (ΠΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Ρ ΠΎΠ΄Π° ΠΈΠ³ΡΠΎΠΊΠ°) ΠΈΠ»ΠΈ Β«Your turnΒ» (ΠΠ°Ρ Ρ ΠΎΠ΄).
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π² ΠΈΠ³ΡΠ΅, ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΠΊΠ°ΠΊΠ°Ρ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° Π²ΡΠ±ΡΠ°Π½Π° Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ. Π§ΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΎΠ΄, Π½ΡΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΡΠ΅Π»ΠΎΠΊ Π²Π»Π΅Π²ΠΎ ΠΈ Π²ΠΏΡΠ°Π²ΠΎ, ΠΈ ΠΏΠΎΡΠΎΠΌ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠΈΡΠΊΡ. ΠΠ°ΡΠΊΠ΅Ρ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² ΠΈΠ³ΡΠ΅ Connect 4 β ΡΡΠΎ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡΡΠ΅Π»ΠΊΠ°, ΡΠ²Π΅Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΈΠ³ΡΠΎΠΊΠ° (ΠΊΡΠ°ΡΠ½Π°Ρ β Π΄Π»Ρ ΠΈΠ³ΡΠΎΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π° ΡΠΈΠ½ΡΡ β Π΄Π»Ρ ΠΈΠ³ΡΠΎΠΊΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°). ΠΠ°ΡΠΊΠ΅Ρ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π°Π΄ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΎΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΠ³ΡΠΎΠΊ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ Π·Π½Π°ΡΡ, Π² ΠΊΠ°ΠΊΡΡ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡ Π±ΡΠ΄Π΅Ρ Π±ΡΠΎΡΠ΅Π½Π° ΡΠΈΡΠΊΠ°.
...Π ΠΊΠΎΠΏΠΈΠ»ΠΊΡ ΠΠ³ΡΠΎΠΊΠ°
ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠ²Π΅ΡΠΎΠ²ΠΎΠ΅ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ³ΡΠΎΠΊΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½Π°. ΠΠ΄Π½Π°ΠΊΠΎ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ³ΡΡ, ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΎΠΊΡΠ°ΡΠΈΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π² ΡΠ°Π·Π½ΡΠ΅ ΡΠ²Π΅ΡΠ°, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠΌ, Π° ΠΊΠ°ΠΊΠΎΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠΌ.
ΠΡΠ°ΠΊ, Π² ΠΈΠ³ΡΠ΅ Connect 4 Π΅ΡΡΡ ΡΠ΅ΡΡΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°:
βΊ Π΄ΠΎΡΠΊΠ°;
βΊ ΡΡΡΠΎΠΊΠ° ΡΠΎΡΡΠΎΡΠ½ΠΈΡ;
βΊ ΡΠΈΡΠΊΠΈ;
βΊ ΡΡΡΠ΅Π»ΠΊΠ°-ΠΌΠ°ΡΠΊΠ΅Ρ.
Π£ Π²Π°Ρ ΡΠΆΠ΅ Π΅ΡΡΡ ΠΎΠΏΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ³Ρ Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠΌΠΈ ΡΠΏΡΠ°ΠΉΡΠ°ΠΌΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈΠ³ΡΡ Connect 4 Π΄Π»Ρ Π²Π°Ρ Π½Π΅ ΡΠΎΡΡΠ°Π²ΠΈΡ ΡΡΡΠ΄Π°. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈΠ³ΡΡ.
ΠΠ³ΡΠΎΠ²Π°Ρ Π»ΠΎΠ³ΠΈΠΊΠ°
Π‘Π°ΠΌΠΎΠ΅ ΡΡΡΠ΄Π½ΠΎΠ΅ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΠΈΠ΅ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈΠ³ΡΡ Connect 4 β ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ±Π΅Π΄ΠΈΠ²ΡΠ΅Π³ΠΎ ΠΈΠ³ΡΠΎΠΊΠ°. Π‘Π½Π°ΡΠ°Π»Π° ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ: ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΠ΅ΡΡΡΠ΅Ρ ΡΠΈΡΠ΅ΠΊ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ° Π² ΡΡΠ΄Ρ, ΡΡΠΎΠ»Π±ΡΠ΅ ΠΈΠ»ΠΈ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, ΡΠ°ΠΊ? ΠΡΠΎ ΠΈ Π²ΠΏΡΡΠΌΡ ΠΏΡΠΎΡΡΠΎ Π΄Π»Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π°ΡΡΠΈΡΡ Π΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ β Π½Π΅ ΡΠ°ΠΊΠ°Ρ ΡΠΆ ΠΈ ΠΏΡΠΎΡΡΠ°Ρ Π·Π°Π΄Π°ΡΠ°. ΠΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Java-ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈΠ³ΡΡ Connect 4.
ΠΠ΄Π½ΠΎ ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ β ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ Π²ΡΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΠΈΡ ΠΊ ΠΏΠΎΠ±Π΅Π΄Π΅. ΠΡΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅, Π° Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π»ΠΈΠ·ΠΎΠΊ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΈΠ³ΡΠΎΠΊΠΎΠ² ΠΊ ΠΏΠΎΠ±Π΅Π΄Π΅. Π₯ΠΎΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π½Π΅ ΡΡΠΎΠ»Ρ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π½Π΅ ΡΠΎΡΡΠ°Π²ΠΈΡ ΡΡΡΠ΄Π°. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Π² ΠΊΠΎΠ΄Π΅ ΠΈΠ³ΡΡ Connect 4 Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Β«ΡΠΈΠ»ΠΎΠ²ΠΎΠΉ ΠΏΡΠΈΠ΅ΠΌΒ». Π£Π²Π΅ΡΠ΅Π½, ΡΡΠΎ Π΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»Π΅Π³Π°Π½ΡΠ½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠΈ, Π½ΠΎ ΡΠ°Π±Π»ΠΈΡΠ° Ρ Π²ΡΠΈΠ³ΡΡΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡΠΌΠΈ β ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΠΈ Π²Π΅ΡΡΠΌΠ° ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
Π‘Π΅ΡΡ
ΠΠ°ΠΊ Π²Ρ, Π½Π΅ΡΠΎΠΌΠ½Π΅Π½Π½ΠΎ, ΠΏΠΎΠ½ΡΠ»ΠΈ, Connect 4 β ΡΡΠΎ ΠΏΠΎΡΠ°Π³ΠΎΠ²Π°Ρ ΠΈΠ³ΡΠ°. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π»Ρ Π΅Π΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΡΠ΅ΡΠ΅Π²ΠΎΠ΅ Π΄Π°ΡΠ°Π³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅. ΠΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, ΠΈΠ³ΡΠ° Connect 4 ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½Π° Π½Π° ΡΠ΅Ρ ΠΆΠ΅ ΠΏΡΠΈΠ΅ΠΌΠ°Ρ , ΡΡΠΎ ΠΈ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ Π³Π»Π°Π²Π΅ ΠΌΠΈΠ΄Π»Π΅Ρ Lighthouse. ΠΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΡΠ°Π²Π»ΡΡΡ Π½Π΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π°Π·Π±ΡΠΊΠΈ ΠΠΎΡΠ·Π΅ (ΡΠΎΡΠ΅ΠΊ ΠΈΠ»ΠΈ ΡΠΈΡΠ΅), Π° Π½ΠΎΠΌΠ΅Ρ ΡΡΠΎΠ»Π±ΡΠ°, Π² ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Ρ ΠΎΠ΄. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅Ρ ΠΈΠ³ΡΡ Connect 4 ΠΎΡ ΠΌΠΈΠ΄Π»Π΅ΡΠ° Lighthouse, β ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΡΡΠΈ Ρ ΠΎΠ΄ΠΎΠ². ΠΠ½Π°ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Β«ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅Β», ΠΊΠ°ΠΊ ΡΡΠΎ Π±ΡΠ»ΠΎ Π² ΡΠ»ΡΡΠ°Π΅ Lighthouse.
ΠΠΎΠ΄ΠΎΠ±Π½ΠΎ ΠΌΠΈΠ΄Π»Π΅ΡΡ Lighthouse, ΠΈΠ³ΡΠ° Connect 4 ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π΄Π²ΡΡ ΡΠ΅ΠΆΠΈΠΌΠ°Ρ : ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈ ΡΠ΅ΡΠ²Π΅Ρ. Π Π΅ΠΆΠΈΠΌ ΡΠ°Π±ΠΎΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΈΠ³ΡΡ. ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Π΄Π»Ρ ΠΈΠ³ΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡΡΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ, ΠΈΠ³ΡΠΎΠΊΠΈ ΠΏΠΎΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Ρ ΠΎΠ΄Ρ, ΠΎΡΠΏΡΠ°Π²Π»ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΈΠ³ΡΡ Connect 4. Π Π΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ β ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΡΡΠΈ Ρ ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ³ΡΠΎΠΊΠΎΠΌ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Ρ ΠΎΠ΄Π΅ ΡΠΎΠΏΠ΅ΡΠ½ΠΈΠΊΠ°.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠ°Π±ΠΎΡΡ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π² ΠΈΠ³ΡΠ΅ Connect 4:
1. ΡΠ΅Π»Π΅ΡΠΎΠ½-ΡΠ΅ΡΠ²Π΅Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π΄Π°ΡΠ°Π³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΈ ΠΆΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΠ°;
2. ΡΠ΅Π»Π΅ΡΠΎΠ½-ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π΄Π°ΡΠ°Π³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ;
3. ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈΠ³ΡΠ° Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΠΎΠ΄ΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. ΠΠ°Π»Π΅Π΅ ΠΏΡΠ°Π²ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Ρ ΠΎΠ΄Π° Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΡ ΠΏΡΠΎΠΈΠ³ΡΠ°Π²ΡΠ΅ΠΌΡ;
4. ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠΎΠ²Π΅ΡΡΠ°Π΅Ρ Ρ ΠΎΠ΄ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΡΠ΅ΡΠ²Π΅ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅;
5. Ρ ΠΎΠ΄ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ;
6. ΠΈΠ³ΡΠ° Π΄Π»ΠΈΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΈΠ³ΡΠΎΠΊΠΎΠ² Π½Π΅ ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ±Π΅Π΄Ρ ΠΈΠ»ΠΈ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΡΡ Ρ ΠΎΠ΄ΠΎΠ²;
7. ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Π·Π°Π²Π΅ΡΡΠ°ΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅.
ΠΠ°ΠΊ Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅, Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΡΡΡ, ΠΈΠ³ΡΠ° Connect 4 β ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΌΠΈΠ΄Π»Π΅ΡΠ° Lighthouse. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ β ΡΡΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Ρ ΠΎΠ΄Π°ΠΌΠΈ ΠΈΠ³ΡΠΎΠΊΠΎΠ² ΠΈ ΠΎΠ±ΠΌΠ΅Π½ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅, Π° Π½Π΅ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ Π°Π·Π±ΡΠΊΠΈ ΠΠΎΡΠ·Π΅. ΠΠ°ΠΊ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π΄Π°Π»ΡΡΠ΅, ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΡΡΡ ΠΈΠ³ΡΡ Connect 4 Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΏΠΎΡ ΠΎΠΆ Π½Π° ΠΊΠΎΠ΄ ΠΌΠΈΠ΄Π»Π΅ΡΠ° Lighthouse.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈΠ³ΡΡ
ΠΠΎΠ΄ΠΎΠ±Π½ΠΎ ΡΠΎΠΌΡ, ΠΊΠ°ΠΊ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ³ΡΡ Connect 4 Π±ΡΠ» ΡΠ°Π·Π±ΠΈΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΡΠ°ΠΏΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π°. Π ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π°Ρ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΊΠΎΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΈΠ³ΡΠΎΠ²ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ².
ΠΠ»ΠΈΠ΅Π½Ρ ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Π² ΠΈΠ³ΡΠ΅ Connect 4
ΠΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° ΠΈΠ³ΡΡ Connect 4 ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² Π΄Π²ΡΡ ΠΊΠ»Π°ΡΡΠ°Ρ : C4 Client ΠΈ C4Server. ΠΠ΅ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΡΡΠΈ Π΄Π²Π° ΠΊΠ»Π°ΡΡΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ ΡΠ΅ΡΠ²Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΈΠ³ΡΠΎΠ²ΡΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ. ΠΠ±Π° ΠΊΠ»Π°ΡΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Runnable. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅ΡΠ²Π΅Ρ ΠΎΠ±ΡΡΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΌ, Π΄Π°Π²Π°ΠΉΡΠ΅ Π½Π°ΡΠ½Π΅ΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΊΠ»Π°ΡΡΠ° C4Server.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΊΠ»Π°ΡΡΠ° C4Server:
private C4Canvas canvas;
private DatagramConnection dc;
private String address;
private boolean connected;Π‘Π΅ΡΠ²Π΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΈΠ³ΡΡ Ρ ΠΈΠ³ΡΠΎΠ²ΡΠΌ Ρ ΠΎΠ»ΡΡΠΎΠΌ, ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠΌ ΠΈΠ³ΡΠΎΠΉ. ΠΠΎΡΡΠΎΠΌΡ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠ»Π°ΡΡ C4Server ΡΠΎΡ ΡΠ°Π½ΡΠ» Ρ ΠΎΠ»ΡΡ ΠΈΠ³ΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ canvas. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ dc ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ Π΄Π°ΡΠ°Π³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ address ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π°Π΄ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° β ΠΎΠ½ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π΄Π°ΡΠ°Π³ΡΠ°ΠΌΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΡ. Π Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ connected ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π΅Ρ. ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ ΠΊΠ»Π°ΡΡΠ° C4Server ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° C4Canvas:
public C4Server(C4Canvas c) {
canvas = c;
connected = false;
}ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ C4Server() ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡ, ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ, ΠΊΡΠΎΠΌΠ΅ ΠΊΠ°ΠΊ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ 2 ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅. ΠΠ΅ΡΠΎΠ΄ start(), ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠ»Π΅Π΄ΡΠ΅ΡΡΡ ΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Runnable, ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΡΡ:
public void start() {
Thread t = new Thread(this);
t.start();
}ΠΠ΄Π΅ΡΡ Π½Π΅Ρ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎΠ³ΠΎ β ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΠΎΡΠΎΠΊΠ°. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ Π² ΠΊΠ»Π°ΡΡΠ΅ C4 Server Π΅ΡΡΡ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ Π±ΠΎΠ»Π΅Π΅ ΡΠΊΡΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ β ΠΌΠ΅ΡΠΎΠ΄ stop(), ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΎΠΎΠ±ΡΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ:
public void stop() { }
ΠΠΎΠ΄ ΠΊΠ»Π°ΡΡΠ° C4Server Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄Π° run(), ΠΊΠΎΠ΄ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 15.1. ΠΠΈΡΡΠΈΠ½Π³ 15.1. ΠΠ΅ΡΠΎΠ΄ run() ΠΊΠ»Π°ΡΡΠ° C4 Server ΡΡΠΎ ΡΠ΅ΡΠ΄ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Connect 4
public void run() {
try {
// ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡΡΡ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ
canvas.setStatus("Waiting for peer client..."); //Π‘Π΅ΡΠ²Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΡΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ ΠΏΡΡΠ°Π΅ΡΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡΡΡ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ
dc = null;