ΠΠΎΠΈΡΠΊ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ Π² Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ΅
ΠΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»ΡΡ ΠΏΡΠΈΠ½ΡΡΡΠΉ Π² ΡΡΠ΅Π΄Π΅ Delphi ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. ΠΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ ΡΡΡΡΠΊΡΡΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄. Π ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΎΠΊΠ½Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π»Π°Π±ΠΈΡΠΈΠ½Ρ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΡΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΌΠ΅Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅. Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠ΅ΡΠ°Π΅ΠΌΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π΄ΠΎΡΠ»ΠΎΠ²Π½ΠΎ ΠΏΠΎ Π·Π°Π΄Π°Π½ΠΈΡ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠΎΠΈΡΠΊ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ Π² Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ΅ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠΈΠ½ΠΈΡΡΠ΅ΡΡΡΠ²ΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π½Π°ΡΠΊΠΈ Π ΠΎΡΡΠΈΠΉΡΠΊΠΎΠΉ Π€Π΅Π΄Π΅ΡΠ°ΡΠΈΠΈ
ΠΠ³Π΅Π½ΡΡΡΠ²ΠΎ ΠΏΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π’ΠΈΡ ΠΎΠΎΠΊΠ΅Π°Π½ΡΠΊΠΈΠΉ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅Ρ ΠΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΡΠΈΡΡΡ ΠΡΡΡΠΎΠ²Π°Ρ ΡΠ°Π±ΠΎΡΠ°
ΠΠΎΠΈΡΠΊ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ Π² Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ΅
ΠΡΠΏΠΎΠ»Π½ΠΈΠ»: ΠΠ²Π°Π½ΠΎΠ² Π.Π.
ΠΠ»Π°Π΄ΠΈΠ²ΠΎΡΡΠΎΠΊ 2009
1. ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
2. Π€ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
3. ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ
4. ΠΠΎΠ΄ΡΠ»ΡΠ½Π°Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
4.1 ΠΠ±ΡΠ°Ρ ΡΡ Π΅ΠΌΠ° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
4.2 ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
5. Π’Π΅ΠΊΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
6. Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
7. Π’Π΅ΡΡΠΎΠ²ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ³ΡΡ ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π‘ΠΏΠΈΡΠΎΠΊ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΡ
1. ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠ΅ΡΠ°Π΅ΠΌΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π΄ΠΎΡΠ»ΠΎΠ²Π½ΠΎ ΠΏΠΎ Π·Π°Π΄Π°Π½ΠΈΡ Π·Π²ΡΡΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: «ΠΠ°Π΄Π°Π½ Π»Π°Π±ΠΈΡΠΈΠ½Ρ, ΡΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ ΠΈΠ· ΠΊΠΎΠΌΠ½Π°Ρ, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈΠΌΠ΅Π΅ΡΡΡ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ΅Ρ Π΄Π²Π΅ΡΠ΅ΠΉ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ½Π°ΡΡ. ΠΠ΄Π½Π° ΠΈΠ· Π΄Π²Π΅ΡΠ΅ΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π²Ρ ΠΎΠ΄ΠΎΠΌ Π² Π»Π°Π±ΠΈΡΠΈΠ½Ρ, Π΄ΡΡΠ³Π°Ρ — Π²ΡΡ ΠΎΠ΄ΠΎΠΌ. ΠΠ°ΠΉΡΠΈ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ ΠΏΡΡΡ ΠΎΡ Π²Ρ ΠΎΠ΄Π° Π² Π»Π°Π±ΠΈΡΠΈΠ½Ρ ΠΊ Π΅Π³ΠΎ Π²ΡΡ ΠΎΠ΄Ρ».
Π¦Π΅Π»ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ «ΠΠΎΠΈΡΠΊ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ», ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π΅Ρ Π»Π°Π±ΠΈΡΠΈΠ½Ρ ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ ΠΏΡΡΡ Π΅Π³ΠΎ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π΅Π³ΠΎ.
ΠΠ°Π±ΠΈΡΠΈΠ½Ρ Π·Π°Π΄Π°Π΅ΡΡΡ Π²ΠΎ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅, Π² ΡΠΎΠΌ ΠΆΠ΅ ΡΠ°ΠΉΠ»Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π²Ρ ΠΎΠ΄Π° ΠΈ Π²ΡΡ ΠΎΠ΄Π°, ΠΈ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π½ΡΠΆΠ½ΡΠΉ Π»Π°Π±ΠΈΡΠΈΠ½Ρ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ΄Π°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ, Π½Π°ΡΠΈΡΠΎΠ²Π°ΡΡ Π»Π°Π±ΠΈΡΠΈΠ½Ρ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΡΠΎΡ ΠΏΡΡΡ.
ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΏΡΡΡ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²ΡΠ΄Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΎ ΡΠΎΠΌ ΡΡΠΎ Π΄Π°Π½Π½ΡΠΉ ΠΏΡΡΡ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ.
2. Π€ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
ΠΠ»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ Π·Π°Π΄Π°ΡΠΈ ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΅Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠ°Π±ΠΈΡΠΈΠ½Ρ ΠΌΡ Π·Π°Π΄Π°Π΅ΠΌ Π²ΠΎ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΌΠ°ΡΡΠΈΡΠ΅ΠΉ, ΡΠΎΡΡΠΎΡΡΠΈΡ ΠΈΠ· 8, 0 ΠΈ 1. ΠΠ°ΠΆΠ΄Π°Ρ Π·Π°ΠΏΠΈΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΊΠΎΠΌΠ½Π°ΡΡ Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ° — Π²ΠΎΡΡΠΌΠ΅ΡΠΊΠ° Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΠ΅Ρ ΡΠ°ΠΌΡ ΠΊΠΎΠΌΠ½Π°ΡΡ ΠΈ ΡΠ΅ΡΡΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π²ΠΎΠΊΡΡΠ³ Π½Π΅Π΅ (0- ΡΡΠ΅Π½Π° ΠΈΠ»ΠΈ 1- ΠΏΡΠΎΡ ΠΎΠ΄) Π΅ΡΡΡ ΠΈΠ»ΠΈ Π½Π΅Ρ ΠΏΡΠΎΡ ΠΎΠ΄. Π’Π°ΠΊ ΠΆΠ΅ Π²ΠΎ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π·Π°Π΄Π°ΡΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π²Ρ ΠΎΠ΄Π°, Π²ΡΡ ΠΎΠ΄Π° ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠΌΠ΅Π½Π½ΠΎ Ρ ΡΡΠΈΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠΈ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΏΡΡΠΈ.
3. ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠΈ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ ΠΈ ΠΏΡΠΈΠ΅ΠΌΠ°Ρ , ΠΈΠΌΠ΅Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ. Π Π΄Π°Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Π±ΡΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ ΠΌΠ΅ΡΠΎΠ΄ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ Π½Π° Π³ΡΠ°ΡΠ΅.
ΠΡΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ Π² ΠΏΡΠΎΡΡΠΎΠΌ ΠΎΡΠ³ΡΠ°ΡΠ΅ Ρ Π½Π΅ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π²Π΅ΡΠ°ΠΌΠΈ. ΠΡΠ»ΠΈ Π³ΡΠ°Ρ Π½Π΅ Π²Π·Π²Π΅ΡΠ΅Π½, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ Π²ΡΠ΅ ΡΠ΅Π±ΡΠ° ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ Π²Π΅Ρ.
ΠΠΎΠ·ΡΠΌΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎΠΉ Π³ΡΠ°Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅Π±ΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ Π²Π΅Ρ, ΡΠΎ Π΅ΡΡΡ Π΄Π»ΠΈΠ½Π° Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ΅Π±ΡΠ° Π±ΠΎΠ»ΡΡΠ΅ 0. ΠΠ°ΠΉΠ΄Π΅ΠΌ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ ΠΏΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ Π½Π°ΡΠ°Π»Π° ΠΈ ΠΊΠΎΠ½Π΅Ρ. ΠΠ΅ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ΅Π±ΡΠ° Π±ΡΠ΄Π΅ΠΌ ΡΡΠΈΡΠ°ΡΡ ΡΠ΅Π±ΡΠ°ΠΌΠΈ Ρ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌΠΈ Π²Π΅ΡΠ°ΠΌΠΈ. Π‘ΡΠΌΠΌΡ Π²Π΅ΡΠΎΠ² ΡΠ΅Π±Π΅Ρ Π² ΠΏΡΡΠΈ Π±ΡΠ΄Π΅ΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ Π²Π΅ΡΠΎΠΌ ΠΈΠ»ΠΈ Π΄Π»ΠΈΠ½ΠΎΠΉ ΠΏΡΡΠΈ. ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΏΠΎΠΈΡΠΊΠ° ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ, Π½Π°ΡΠΈΠ½Π°Π΅ΠΌ ΠΈΠ· Π²Π΅ΡΡΠΈΠ½Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠ»ΠΈ ΠΊΠ°ΠΊ Π½Π°ΡΠ°Π»ΠΎ, ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ Π³ΡΠ°Ρ Π² ΡΠΈΡΠΈΠ½Ρ ΠΏΠΎΠΌΠ΅ΡΠ°Ρ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ-ΠΌΠ΅ΡΠΊΠ°ΠΌΠΈ ΠΈΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ ΠΎΡ Π½Π°ΡΠ°Π»Π°. ΠΠ΅ΡΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅. ΠΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΌΠ΅ΡΠΊΠ°ΡΡΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π° Π³ΡΠ°ΡΠ΅ ΠΎΡ Π½Π°ΡΠ°Π»Π° Π΄ΠΎ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ°Π±ΠΎΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ Π±ΡΠ΄ΡΡ ΠΈΠΌΠ΅ΡΡ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ, Π° ΠΎΡΡΠ°Π»ΡΠ½Π°Ρ ΠΈΡ ΡΠ°ΡΡΡ — Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅. ΠΠ»Π³ΠΎΡΠΈΡΠΌ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½Π΅ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΠΊΡ, ΡΠΎ Π΅ΡΡΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ ΠΎΡ Π½Π°ΡΠ°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½ΡΠ°.
ΠΠ½Π°ΡΠ°Π»Π΅ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Π΅ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΌΠ΅ΡΠΊΠ° 0 (Π½ΡΠ»Π΅Π²ΠΎΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΎ ΡΠ°ΠΌΠΎΠΉ ΡΠ΅Π±Ρ) Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΎΡΡΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΠ½ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΌΠ΅ΡΠΊΠ° Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΡ. ΠΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ°Π³Π΅ ΠΌΠ΅ΡΠΊΠΈ ΠΌΠ΅Π½ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
1. ΠΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Π΅, Π½Π΅ ΠΈΠΌΠ΅ΡΡΠ΅ΠΉ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΈ, ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π½ΠΎΠ²Π°Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΌΠ΅ΡΠΊΠ° — Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ°Ρ ΠΈΠ· Π΅Π΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ ΡΠΈΡΠ»Π°, ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½Π° ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΌΠ΅ΡΠΊΠ° Π½Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠ°Π³Π΅.
2. ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ°Ρ ΠΈΠ· Π²ΡΠ΅Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ ΡΠ²ΠΎΠ΅ΠΉ Π²Π΅ΡΡΠΈΠ½Ρ. Π ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π²Π΅Π½ΡΡΠ²Π° Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ Π»ΡΠ±Π°Ρ ΠΈΠ· Π½ΠΈΡ .
Π¦ΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏ. 1 ΠΈ ΠΏ. 2 ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΊΠΎΠ½Π΅ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΈ. ΠΠ΅Π³ΠΊΠΎ Π²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΌΠ΅ΡΠΊΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ — ΡΡΠΎ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ.
4. ΠΠΎΠ΄ΡΠ»ΡΠ½Π°Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π ΠΎΠ±ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π° Π΄Π²Π΅ ΡΠΎΡΡΠ°Π²Π½ΡΠ΅ ΡΠ°ΡΡΠΈ: ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ°ΡΡΠ΅ΡΠΎΠ² ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ .
4.1 ΠΠ±ΡΠ°Ρ ΡΡ Π΅ΠΌΠ° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
4.2 ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΡΠ²ΠΎΠΉ ΠΊΠ»Π°ΡΡ. ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΏΡΠΈΠ·ΡΠ²Π°ΡΡΡΡ ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² (ΠΈΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ) ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΊΠ»Π°ΡΡΠΎΠ² (ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π°Π΄Π°Ρ ΠΊΠ»Π°ΡΡΠ°).
1). UnWay — ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° TWay ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ.
ΠΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° TWay.
Procedure TWay. Input — ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π²Π²ΠΎΠ΄Π° ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΎΠΊ ΠΊΠΎΠΌΠ½Π°ΡΡ
Procedure TWay. CreateAdj — ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡΡ ΡΠΌΠ΅ΠΆΠ½ΠΎΡΡΠΈ ΠΊΠΎΠΌΠ½Π°Ρ
Procedure TWay. ShortRoom — ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΠΏΠΎΠΈΡΠΊΠ° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ
2). UnDraw — ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° TOcno
ΠΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° TOcno.
Procedure TOcno. Organize — ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΡΠ΅ΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ²
Procedure TOcno. DrawWay — ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠΈΡΡΠ΅Ρ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠΉ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ ΠΏΡΡΡ
Procedure TOcno. DrawRect — ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠΈΡΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°
5. Π’Π΅ΠΊΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
Π Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠ½ΠΊΡΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΡΡ ΡΠ΅ΠΊΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°ΡΠΈΠΌΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ².
ΠΠ»Π°ΡΡΠ° TWay Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΡΡΡΠ° ΠΊΠΎΠ½Ρ ΠΏΠΎ ΡΠ°Ρ ΠΌΠ°ΡΠ½ΠΎΠΌΡ ΠΏΠΎΠ»Ρ.
TWay = class
Public
nmDataFile:String;
fout:TextFile; {Π€Π°ΠΉΠ» ΠΏΠ΅ΡΠ°ΡΠΈ Π΄Π°Π½Π½ΡΡ }
nX:Integer; { ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²Π΅ΡΡΠΈΠ½ Π² Π³ΡΠ°ΡΠ΅ }
Mark:TypeMark; { ΠΡΠΈΠ·Π½Π°ΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΡ ΠΌΠ΅ΡΠΎΠΊ }
Dist:TypeDist; { ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠΈΡ ΠΌΠ΅ΡΠΎΠΊ Π²Π΅ΡΡΠΈΠ½ (ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ) }
Prev:TypePrev; { Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° Π±Π»ΠΈΠΆΠ°ΠΉΡΡΡ Π²Π΅ΡΡΠΈΠ½Ρ }
x0:Integer; { ΠΠ΅ΡΡΠΈΠ½Π° Π½Π°ΡΠ°Π»Π° ΠΏΡΡΠΈ }
z:Integer; { ΠΠ΅ΡΡΠΈΠ½Π° ΠΊΠΎΠ½ΡΠ° ΠΏΡΡΠΈ }
y:Integer; { ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΠ½Π° Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ }
nr, mr: Integer; {Π Π°Π·ΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠ½Π°Ρ Π±Π°ΡΡΠ΅ΡΠΎΠ²}
Adj:TypeAdj; {Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠΌΠ΅ΠΆΠ½ΠΎΡΡΠΈ}
nA:Integer; {Π§ΠΈΡΠ»ΠΎ ΠΊΠΎΠΌΠ½Π°Ρ ΠΈ Π²Π΅ΡΡΠΈΠ½}
Wr:TypeWe; {ΠΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ ΠΊΠΎΠΌΠ½Π°Ρ}
zEnd:Integer; { ΠΠ΅ΡΡΠΈΠ½Π° ΠΊΠΎΠ½ΡΠ° ΠΏΡΡΠΈ-Π½Π°ΠΉΠ΄Π΅Π½Π½Π°Ρ }
Public
Constructor Init;
Destructor Done;
Procedure Input;
Procedure CreateAdj;
Procedure ShortRoom;
function YesRib (xr, yr: Integer):Boolean;
end;
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° TMaze
// ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π²Π²ΠΎΠ΄Π° ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΎΠΊ ΠΊΠΎΠΌΠ½Π°ΡΡ
Procedure TWay. Input;
var f: TextFile; {Π€Π°ΠΉΠ» Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½ΡΡ }
i, j, w:Integer;
i0,j0:Integer;
iz, jz: Integer;
begin
AssignFile (f, nmDataFile);
Reset (f);{Π€Π°ΠΉΠ» ΠΎΡΠΊΡΡΡ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ}
ReadLn (f, i0, j0); {ΠΠ°ΡΠ°Π»ΠΎ ΠΏΡΡΠΈ}
ReadLn (f, iz, jz); {ΠΠΎΠ½Π΅Ρ ΠΏΡΡΠΈ}
ReadLn (f, nr, mr); {Π Π°Π·ΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠ½Π°ΡΡ Π±Π°ΡΡΠ΅ΡΠΎΠ²}
//——————————————————————;
x0:=(i0−1)*mr+(j0−1); //ΠΠΎΠΌΠ½Π°ΡΠ°-ΠΠ°ΡΠ°Π»ΠΎ
z:=(iz-1)*mr+(jz-1); //ΠΠΎΠΌΠ½Π°ΡΠ°-ΠΠΎΠ½Π΅Ρ
zEnd:=z;
//——————————————————————;
//ΠΠ±Π½ΡΠ»ΠΈΡΡ
for i:=1 to nr do begin
for j:=1 to mr do begin
Wr[i, j]. L:=0;
Wr[i, j].U:=0;
Wr[i, j].R:=0;
Wr[i, j].D:=0;
end;
end;
for i:=1 to nr do begin
//———————————————————-;
if i=1 then
for j:=1 to mr do Read (f, Wr[i, j]. U)
else
for j:=1 to mr do Wr[i, j]. U:=Wr[i-1,j].D;
//———————————————————-;
for j:=1 to mr do begin
if j=1 then Read (f, Wr[i, 1]. L);
Read (f, w, Wr[i, j].R);
if j
end;
for j:=1 to mr do Read (f, Wr[i, j]. D);
end;
// ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡΡ ΡΠΌΠ΅ΠΆΠ½ΠΎΡΡΠΈ ΠΊΠΎΠΌΠ½Π°Ρ
Procedure TWay. CreateAdj;
var i, j, k, v: Integer;
begin
na:=nr*mr; {Π§ΠΈΡΠ»ΠΎ ΠΊΠΎΠΌΠ½Π°Ρ-Π²Π΅ΡΡΠΈΠ½}
k:=0;
for i:=1 to nr do begin
for j:=1 to mr do begin
for v:=1 to 4 do Adj[k, v]: =-1; //ΠΠ΅Ρ ΠΏΡΠΎΡ ΠΎΠ΄Π°
if wr[i, j]. L=1 then Adj[k, 1]: =k-1;
if wr[i, j]. R=1 then Adj[k, 2]: =k+1;
if wr[i, j]. U=1 then Adj[k, 3]: =k-mr;
if wr[i, j]. D=1 then Adj[k, 4]: =k+mr;
k:=k+1; //Π§ΠΈΡΠ»ΠΎ ΠΊΠΎΠΌΠ½Π°Ρ
end;
end;
//—————————————————-;
for k:=0 to na-1 do begin
for v:=1 to 4 do begin
Write (fout, Adj[k, v]: 3);
end;
WriteLn (fout);
end;
end;
//ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΠΏΠΎΠΈΡΠΊΠ° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ
Procedure TWay. ShortRoom;
Var
i, j, x, k: Integer;
weight:LongInt;
yes:Boolean;
begin
nX:=na-1; (* X={0,1,2,…, nX} - ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²Π΅ΡΡΠΈΠ½ *)
//ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΡ
for x:=0 to nX do begin
Mark[x]: =FALSE;
Dist[x]:=$ 7fffffff;
end;
y:=x0; {ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΠ½Π° Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ}
Mark[y]: =TRUE;
Dist[y]:=0;
zEnd:=z;
while not Mark[z] do begin
{ΠΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ}
for x:=0 to nX do
if (not Mark[x]) and YesRib (x, y) and (Dist[x]>Dist[y]+1) then begin
Dist[x]: =Dist[y]+1;
Prev[x]:=y;
end;
{ΠΠΎΠΈΡΠΊ Π²Π΅ΡΡΠΈΠ½Ρ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ}
yes:=False;
weight:=$ 7fffffff;
for x:=0 to nX do if not Mark[x] then if weight>Dist[x] then begin
weight:=Dist[x];
y:=x;
yes:=True;
end;
if not yes then begin
Write (fout,'ΠΠ΅Ρ Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°!');
showmessage ('Π½Π΅Ρ Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°');
zEnd:=y; //ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½Π°Ρ
break;
end;
Mark[y]: =TRUE;
end;
ΠΠ»Π°ΡΡΠ° TOcno ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°
TOcno = class (TObject)
public
mI:TRect;//ΠΠ΅Π»Π΅Π·Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ
mC:TCanvas;//ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ
m, n: Integer;//Π Π°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ (m, n)
R: array of array of TRect;//Π‘Π΅ΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ²
C0,C1: TColor;
public
procedure Init ();
procedure Done ();
procedure Draw (wCvas:TCanvas; wIron: TRect; md: TWay);
procedure DrawRect (i, j: Integer; md: Tway);
procedure Organize (zR: TRect);
function MouseRect (mX, mY: Integer; md: Tway):Boolean;
procedure DrawWay (md:Tway);
end;
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° TOcno.
// ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΡΠ΅ΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ²
procedure TOcno. Organize(zR: TRect);
var i, j, d, k: Integer;
x, y, z:array of Integer;
pr:String;
begin
//Π Π°Π·ΡΡΡΠΈΡΡ
//if R<>nil then for i:=0 to m do R[i]: =nil;
R:=nil;
SetLength (R, m+1); //ΠΠ°ΠΌΡΡΡ
for i:=0 to m do SetLength (R[i], n+1);
//Π€ΠΎΡΠΌΠΈΡΡΠ΅ΠΌ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ
SetLength (y, m+1);
SetLength (x, n+1);
SetLength (z, m+n+1);
//ΠΠΎ Π²ΡΡΠΎΡΠ΅
d:=(zR.Bottom-zR.Top) div m;
k:=(zR.Bottom-zR.Top) mod m;
for i:=0 to m-1 do z[i]: =d;
for i:=0 to k-1 do inc (z[i]);
y[0]: =zR.Top;
for i:=0 to m-1 do y[i+1]: =y[i]+z[i];
//ΠΠΎ ΡΠΈΡΠΈΠ½Π΅
d:=(zR.Right-zR.Left) div n;
k:=(zR.Right-zR.Left) mod n;
for j:=0 to n-1 do z[j]: =d;
for j:=0 to k-1 do inc (z[j]);
x[0]: =zR.Left;
for j:=0 to n-1 do x[j+1]: =x[j]+z[j];
//ΠΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ
for i:=0 to m-1 do begin
for j:=0 to n-1 do begin
R[i+1,j+1]: =Rect (x[j], y[i], x[j+1], y[i+1]);
end;
end;
x:=nil;
y:=nil;
z:=nil;
end;
// ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠΈΡΡΠ΅Ρ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠΉ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ ΠΏΡΡΡ
procedure TOcno. DrawWay(md:Tway);
var k, x, ir, jr: Integer;
wr, wrG: TRect;
h, w: Integer;
cx, cy: Integer;
begin
k:=md.z;
x:=k+1;
ir:=(x-1) div md. mr +1;
jr:=(x-1) mod md. mr +1;
wr:=R[ir, jr];
cx:=(wr.Left+wr.Right) div 2;
cy:=(wr.Top+wr.Bottom) div 2;
w:=(wr.Right-wr.Left) div 12;
h:=(wr.Bottom-wr.Top) div 7;
wr.Left:=cx-w;
wr.Right:=cx+w;
wr.Top:=cy-h;
wr.Bottom:=cy+h;
mC.Brush.Color:=RGB (0,255,255);
mC.Pen.Width:=3;
mC.Pen.Color:=RGB (0,0,0);
mC.Arc (wR.Left, wR. Top, wR. Right, wR. Bottom, wR. Left, wR. Top, wR. Left, wR. Top);
k:=md.zEnd;
x:=k+1;
ir:=(x-1) div md. mr +1;
jr:=(x-1) mod md. mr +1;
wr:=R[ir, jr];
cx:=(wr.Left+wr.Right) div 2;
cy:=(wr.Top+wr.Bottom) div 2;
w:=(wr.Right-wr.Left) div 12;
h:=(wr.Bottom-wr.Top) div 7;
wr.Left:=cx-w;
wr.Right:=cx+w;
wr.Top:=cy-h;
wr.Bottom:=cy+h;
mC.MoveTo (cx, cy);
mC.Brush.Color:=RGB (0,255,0);
mC.Pen.Width:=3;
mC.Pen.Color:=RGB (255,255,255);
mC.Arc (wR.Left, wR. Top, wR. Right, wR. Bottom, wR. Left, wR. Top, wR. Left, wR. Top);
while k<>md.x0 do begin
k:=md.Prev[k];
x:=k+1;
ir:=(x-1) div md. mr +1;
jr:=(x-1) mod md. mr +1;
wr:=R[ir, jr];
cx:=(wr.Left+wr.Right) div 2;
cy:=(wr.Top+wr.Bottom) div 2;
w:=(wr.Right-wr.Left) div 12;
h:=(wr.Bottom-wr.Top) div 7;
wr.Left:=cx-w;
wr.Right:=cx+w;
wr.Top:=cy-h;
wr.Bottom:=cy+h;
mC.Pen.Width:=7;
mC.Pen.Color:=RGB (255,0,0);
mC.LineTo (cx, cy);
mC.Brush.Color:=RGB (0,255,0);
mC.Pen.Width:=3;
mC.Pen.Color:=RGB (255,255,255);
mC.Chord (wR.Left, wR. Top, wR. Right, wR. Bottom, wR. Left, wR. Top, wR. Left, wR. Top);
end;
end;
// ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠΈΡΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°
procedure TOcno. DrawRect(i, j: Integer; md: Tway);
var d: Integer;
wr, wrG: TRect;
CR:TColor;
wd:Integer;
begin
wd:=14; //ΠΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ
wr:=R[i, j];
wrG:=wr;
d:=3;
Inc (wr.Left, d);
Inc (wr.Top, d);
Dec (wr.Right, d);
Dec (wr.Bottom, d);
mC.Brush.Color:=C1;
mC.Pen.Width:=0;
mC.Pen.Color:=RGB (0,255,255);
mC.FillRect (wr);
CR:=RGB (255,128,255);
if md. Wr[i, j]. L<>1 then
begin
mC.pen.Color:=CR; mC.Pen.Width:=wd;
mc.MoveTo (wr.Left, wr. Top+3);
mc.LineTo (wr.Left, wr. Bottom-3);
end;
if md. Wr[i, j]. R<>1 then
begin
mC.pen.Color:=CR; mC.Pen.Width:=wd;
mc.MoveTo (wr.Right, wr. Top+3);
mc.LineTo (wr.Right, wr. Bottom-3);
end;
if md. Wr[i, j]. U<>1 then
begin
mC.pen.Color:=CR; mC.Pen.Width:=wd;
mc.MoveTo (wr.Left+2,wr.Top);
mc.LineTo (wr.Right-2,wr.Top);
end;
if md. Wr[i, j]. D<>1 then
begin
mC.pen.Color:=CR; mC.Pen.Width:=wd;
mc.MoveTo (wr.Left+2,wr.Bottom);
mc.LineTo (wr.Right-2,wr.Bottom);
end;
end;
6. Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
ΠΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»ΡΡ ΠΏΡΠΈΠ½ΡΡΡΠΉ Π² ΡΡΠ΅Π΄Π΅ Delphi ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. ΠΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ ΡΡΡΡΠΊΡΡΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄. Π ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΎΠΊΠ½Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π»Π°Π±ΠΈΡΠΈΠ½Ρ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΡΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΌΠ΅Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅.
ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ½ΠΊΡΠΎΠ² ΠΌΠ΅Π½Ρ.
Β· «ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ» — ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π² ΡΠ΅Π±Π΅ Π΄Π²Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Ρ «Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅» — Π²ΡΠ±ΠΎΡ ΠΏΡΠ½ΠΊΡΠ° ΠΌΠ΅Π½Ρ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°Π΅ΡΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Ρ «ΠΡΡ ΠΎΠ΄» — ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Β· «Π€Π°ΠΉΠ» Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°» — ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π»Π°Π±ΠΈΡΠΈΠ½ΡΡ.
Β· «ΠΡΡΠΈΡΠ»ΠΈΡΡ» — ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ ΠΏΡΡΡ ΠΈ ΡΠΈΡΡΠ΅Ρ Π»Π°Π±ΠΈΡΠΈΠ½Ρ ΠΈ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠΉ ΠΏΡΡΡ.
ΠΡΠ»ΠΈ ΠΏΡΡΡ Π½Π°ΠΉΠ΄Π΅Π½, ΠΎΠ½ Π²ΡΠ΄Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΈΡΡΠ΅Ρ Π»Π°Π±ΠΈΡΠΈΠ½Ρ ΠΈ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠΉ ΠΏΡΡΡ. ΠΡΠ»ΠΈ ΠΏΡΡΡ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ Π½Π° ΡΠΊΡΠ°Π½ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ «ΠΡΡΡ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½», ΡΠΈΡΡΠ΅Ρ Π»Π°Π±ΠΈΡΠΈΠ½Ρ ΠΈ ΠΏΡΡΡ ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π΄ΠΎΡΡΠΈΠ³Π°Π΅Ρ Π½ΡΠΆΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ.
Π‘ΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ ΠΊΠ»Π΅ΡΠΎΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅. Π’Π°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ — ΡΡΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠ±ΠΎΡ ΡΠ°ΠΉΠ»Π° Π΄Π°Π½Π½ΡΡ Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅, Π²ΡΠ·ΠΎΠ² ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠ½ΠΊΡΠΎΠΌ ΠΌΠ΅Π½Ρ «Π€Π°ΠΉΠ» Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°».
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»Π° Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°.
ΠΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ Π΄Π°Π½Π½ΡΡ ΡΡΠ»ΠΎΠ²Π½ΠΎ Π²Π²Π΅Π»ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΡΡΠΎΠΉ 8 Π΄Π»Ρ ΠΊΠΎΠΌΠ½Π°Ρ Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°.
ΠΠ°Π½Π° ΡΠΈΡΡΠ° Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½Π° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΎΠΊ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠ½Π°ΡΠ°ΠΌΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠΌΠ½Π°ΡΠ° 8 ΠΈΠΌΠ΅Π΅Ρ ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ ΡΠ²Π΅ΡΡ Ρ ΠΈ ΡΠ½ΠΈΠ·Ρ, Π° ΡΠΏΡΠ°Π²Π° ΠΈ ΡΠ»Π΅Π²Π° ΠΎΠ½ΠΈ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ.
ΠΠ°Π½Π½ΡΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ°
1 1 — ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π½Π°ΡΠ°Π»Π° ΠΏΡΡΠΈ
6 4 — ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΊΠΎΠ½ΡΠ° ΠΏΡΡΠΈ
7 6 — ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΡΡ
0 0 0 0 0 0 — Π²Π΅ΡΡ Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ
0 8 1 8 1 8 0 8 0 8 0 8 0 — ΠΊΠΎΠΌΠ½Π°ΡΡ ΠΈ Π±ΠΎΠΊΠΎΠ²ΡΠ΅ ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ
1 1 1 1 0 1 — Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π³ΠΎΡΠΎΠ΄ΠΊΠΈ ΠΊΠΎΠΌΠ½Π°Ρ
0 8 0 8 0 8 1 8 0 8 1 8 0
0 0 0 1 0 1
0 8 1 8 1 8 1 8 1 8 1 8 0
1 0 0 0 0 1
0 8 0 8 1 8 1 8 1 8 1 8 0
1 1 0 1 0 1
0 8 0 8 0 8 1 8 0 8 0 8 0
0 0 1 0 1 1
0 8 1 8 1 8 0 8 0 8 0 8 0
1 0 0 1 1 1
0 8 1 8 1 8 1 8 0 8 1 8 0
0 0 0 0 0 0
ΠΠΎ ΡΡΠΈΠΌ Π΄Π°Π½Π½ΡΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΡΡΠ΅ΡΡ, ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π½ΠΈΠΆΠ΅ Π² ΡΠ΅ΡΡΠΎΠ²ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ (ΡΠΈΡ.1).
7. Π’Π΅ΡΡΠΎΠ²ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ
Π’Π΅ΡΡΠΎΠ²ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΠ΅ΡΠΎΠΌ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ Π² Π»Π°Π±ΠΈΡΠΈΠ½ΡΠ΅.
Π ΠΈΡ. 1. Π Π°Π±ΠΎΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ — Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΊΡΡΡΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΠΎΠΉ ΡΠΎΠ·Π΄Π°Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ΅Π΄Π΅ Delphi, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡ Π² Π½Π΅ΠΌ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ ΠΏΡΡΡ ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ Π½Π° ΡΠΎΡΠΌΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ»ΡΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌ, Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ Π»Π°Π±ΠΈΡΠΈΠ½ΡΠΎΠ², Π½Π°ΡΡΡΠΎΠΉΠΊΠΎΠΉ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². ΠΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡ, ΡΡΠΎ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π²ΡΡΠΎΠΊΠ°.
1. ΠΠ²Π°Π½ΠΎΠ² Π. Π. ΠΠΈΡΠΊΡΠ΅ΡΠ½Π°Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ°. ΠΠ»Π³ΠΎΡΠΈΡΠΌΡ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ: Π£ΡΠ΅Π±. ΠΠΎΡΠΎΠ±ΠΈΠ΅. — ΠΠ»Π°Π΄ΠΈΠ²ΠΎΡΡΠΎΠΊ: ΠΠ·Π΄-Π²ΠΎ ΠΠΠΠ’, 2000. — 288Ρ.
2. ΠΠΎΠ»ΡΠ°Π½ΠΎΠ²Π° Π. Π., ΠΡΡΠ΄Π½ΠΈΠΊΠΎΠ²Π° Π. Π. Delphi Π² ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΠΈ Π·Π°Π΄Π°ΡΠ°Ρ : Π£ΡΠ΅Π±. ΠΏΠΎΡΠΎΠ±ΠΈΠ΅. ΠΠ»Π°Π΄ΠΈΠ²ΠΎΡΡΠΎΠΊ: ΠΠ·Π΄-Π²ΠΎ Π’ΠΠΠ£, 2006. — 92Ρ.