ΠΠ³ΡΠ° Β«ΠΠΎΠ·Π°ΠΉΠΊΠ°Β» Π½Π° ΠΠ΅Π»ΡΠΈ (Delphi)
ΠΡΠΈΠ΅ΠΌΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π΄Π΅Π»ΠΈΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΡΠ΄Π°ΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½Π½ΡΡ ΡΡΠ°ΠΏΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π΄Π΅Π»ΠΈΡ ΠΈ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΈΡΠΏΡΡΠ°Π½ΠΈΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΡΠ΅ΡΡΠΎΠ². ΠΠ° ΡΡΠ°Π΄ΠΈΠΈ «Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅» ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΈΠ·Π΄Π΅Π»ΠΈΡ, ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎ Π·Π°Π΄Π°ΡΠ΅ ΠΈ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° «Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅». Π‘ΡΠ΅Π΄ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡΠ»ΠΈ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠ³ΡΠ° Β«ΠΠΎΠ·Π°ΠΉΠΊΠ°Β» Π½Π° ΠΠ΅Π»ΡΠΈ (Delphi) (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠΈΠ½ΠΈΡΡΠ΅ΡΡΡΠ²ΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π½Π°ΡΠΊΠΈ Π ΠΎΡΡΠΈΠΉΡΠΊΠΎΠΉ Π€Π΅Π΄Π΅ΡΠ°ΡΠΈΠΈ ΠΡΡΡΠΊΠΈΠΉ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅Ρ ΠΠ°ΡΠ΅Π΄ΡΠ° ΠΠ ΠΈ ΠΠ’
ΠΠ£Π Π‘ΠΠΠΠ― Π ΠΠΠΠ’Π
ΠΏΠΎ Π΄ΠΈΡΡΠΈΠΏΠ»ΠΈΠ½Π΅ «ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·ΡΠΊΠ°Ρ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ»
ΠΠΠ Π «ΠΠΠΠΠΠΠ»
ΠΡΠΏΠΎΠ»Π½ΠΈΠ»: ΡΡΡΠ΄Π΅Π½ΡΠΊΠ° Π³ΡΡΠΏΠΏΡ ΠΠ-51
ΠΠ»ΠΈΠ·Π°Π²Π΅ΡΠ° ΠΠΎΡΠΎΠ»Π΅Π²Π°
ΡΡΡΠ΄Π΅Π½ΡΠΊΠ° Π³ΡΡΠΏΠΏΡ ΠΠ-51
ΠΠ½Π°ΡΡΠ°ΡΠΈΡ ΠΠΈΠ½ΠΎΠ²ΡΠ΅Π²Π° ΠΡΠΎΠ²Π΅ΡΠΈΠ»: ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°ΡΠ΅Π»Ρ ΠΠ΅ΡΡΠΈΠΊ Π. Π.
ΠΡΡΡΠΊ 2006
- 1. Π’ΠΠ₯ΠΠΠ§ΠΠ‘ΠΠΠ ΠΠΠΠΠΠΠ 4
- 1.1 ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ 4
- 1.2 ΠΡΠ½ΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ 4
- 1.3 ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ 4
- 1.3.1 Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ·Π΄Π΅Π»ΠΈΡ 4
- 1.3.1.1 ΠΠ΅ΡΠ΅ΡΠ΅Π½Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ 4
- 1.3.1.2 Π Π°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ 4
- 1.3.2 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΈΠ·Π΄Π΅Π»ΠΈΡ 5
- 1.3.2.1 Π‘ΡΠ°Π½Π΄Π°ΡΡΡ 5
- 1.3.2.2 ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ 5
- 1.3.2.3 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΠΎΡΡΠ°Π²Ρ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² 5
- 1.3.2.4 ΠΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ 5
- 1.3.2.5 ΠΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ 6
- 1.3.2.6 ΠΡΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ 6
- 1.3.2.7 Π Π΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠ·Π΄Π΅Π»ΠΈΡ 6
- 1.3.2.8 ΠΠΎΡΠΈΡΠ΅Π»ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ 6
- 1.3.2.9 ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΈ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΠΎΡΡΡ 7
- 1.3.2.10 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΠΈ 7
- 1.3.2.11 Π Π΅ΡΡΠ°ΡΡ 7
- 1.3.2.12 ΠΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΡΡΡ 7
- 1.3.2.13 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ 7
- 1.4 Π‘ΡΠ°Π΄ΠΈΠΈ ΠΈ ΡΡΠ°ΠΏΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ 7
- 1.5 ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΈ ΠΏΡΠΈΠ΅ΠΌΠΊΠΈ 8
- 2.Π ΠΠΠΠ§ΠΠ ΠΠ ΠΠΠΠ’ 8
- 2.1 ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ 8
- 2.2 Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΈΠ·Π΄Π΅Π»ΠΈΡ 8
- 2.2.1 ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ 8
- 2.2.2 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΠΎΡΡΠ°Π²Ρ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² 9
- 2.2.3 Π Π΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠ·Π΄Π΅Π»ΠΈΡ 9
- 2.2.4 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΠΈ 9
- 2.2.5 Π£Π΄ΠΎΠ±ΡΡΠ²ΠΎ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ 9
- 2.2.6 ΠΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΡΡΡ 10
- 2.3 ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ 10
- 2.3.1 ΠΠΎΠ΄ΡΠ»Ρ Unit1 10
- 2.3.1.1 Π’Π°Π±Π»ΠΈΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² 10
- 2.3.1.2 ΠΠ½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΡΠΎΡΠΌΡ 10
- 2.3.1.2 ΠΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ 11
- 2.3.1.3 ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ 11
- 2.3.1.4 ΠΡΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ 11
- 2.3.1.5 ΠΠ»ΠΎΠΊ-ΡΡ Π΅ΠΌΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² 11
- 2.3.1.6 Π’Π΅ΠΊΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ 11
- 2.3.2 ΠΠΎΠ΄ΡΠ»Ρ Unit2 12
- 2.3.2.1 ΠΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ 12
- 2.3.2.2 ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ 12
- 2.3.2.3 ΠΡΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ 12
- 2.3.2.4 ΠΠ»ΠΎΠΊ-ΡΡ Π΅ΠΌΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² 12
- 2.3.2.5 Π’Π΅ΠΊΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ 12
- ΠΠ ΠΠΠΠΠΠΠΠ― 13
- Π‘ΠΠΠ‘ΠΠ ΠΠ‘ΠΠΠΠ¬ΠΠ£ΠΠΠΠ ΠΠΠ’ΠΠ ΠΠ’Π£Π Π« 37
1. Π’ΠΠ₯ΠΠΠ§ΠΠ‘ΠΠΠ ΠΠΠΠΠΠΠ
1.1 ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ Π»ΡΠ΄Π΅ΠΉ, ΡΡΠΈ ΡΠΌΠ΅Π½ΠΈΡ Π² ΡΡΠ΅ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π·Π°Π΄Π°ΡΡ. Π― ΡΠ΅ΡΠΈΠ» Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π³Π»Π°Π²Π½Π°Ρ Π·Π°Π΄Π°ΡΠ° ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π·Π°ΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠ²Π»Π΅ΡΡΡΡ ΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΡΡ , Ρ. Π΅. ΡΠ°Π·Π²Π»Π΅ΡΡΡΡ, ΡΡΠΎ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°Π΄Π°ΡΠ΅ΠΉ Π²ΡΠ΅Ρ ΠΈΠ³Ρ.
1.2 ΠΡΠ½ΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΊ ΠΊΡΡΡΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ ΠΏΠΎ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΡ «ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·ΡΠΊΠ°Ρ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ».
1.3 ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
1.3.1 Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ·Π΄Π΅Π»ΠΈΡ
1.3.1.1 ΠΠ΅ΡΠ΅ΡΠ΅Π½Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ
ΠΠ³ΡΠ° «ΠΠ°Π·Π°ΠΉΠΊΠ°» Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
— Π΅ΡΠ»ΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° ΡΠΎΠ±ΡΠ°Π½Π° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ, Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠΈ ΠΈΠ³ΡΡ;
— ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ;
— ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΈΠ³ΡΡ Π·Π°Π½ΠΎΠ²ΠΎ.
1.3.1.2 Π Π°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ
ΠΡΠΈ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ «ΠΠ°Π·Π°ΠΉΠΊΠ°» Π±ΡΠ»ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ:
— ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°.
Π Π°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Windows ΠΈ Linux. ΠΡΠ»Π° Π²ΡΠ±ΡΠ°Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π² ΡΠ²ΡΠ·ΠΈ Ρ ΡΠΈΡΠΎΡΠ°ΠΉΡΠΈΠΌ Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ, Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΡ ΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ΠΌ Π³ΠΈΠ±ΠΊΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ ΡΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ.
— Π‘ΡΠ΅Π΄ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡΠ»ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ: Delphi ΠΈ Π‘++ Builder. ΠΡΠ» Π²ΡΠ±ΡΠ°Π½ Borland Delphi7. ΠΡΠ±ΠΎΡ ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡΡ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ.
1.3.2 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΈΠ·Π΄Π΅Π»ΠΈΡ
1.3.2.1 Π‘ΡΠ°Π½Π΄Π°ΡΡΡ
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡΡ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΠ‘ΠΠ, ΠΠΠ‘Π’ 19.701−90, ΠΠΠ‘Π’ 2.304−88.
1.3.2.2 ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΠΠ°Π½Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Windows 98, Windows ME, Windows 2000, Windows XP.
1.3.2.3 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΠΎΡΡΠ°Π²Ρ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌΠΈ:
Β· ΠΎΠ±ΡΠ΅ΠΌ ΠΠΠ£ 512 ΠΠ±;
Β· ΠΎΠ±ΡΠ΅ΠΌ ΠΆΠ΅ΡΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠ° 40 ΠΠ±;
Β· ΠΌΠΈΠΊΡΠΎΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Intel Celeron 400 ΠΠΡ;
Β· ΠΌΠΎΠ½ΠΈΡΠΎΡ 17″ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ 1024*768;
Β· Π·Π²ΡΠΊΠΎΠ²Π°Ρ ΠΊΠ°ΡΡΠ°.
1.3.2.4 ΠΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅
ΠΡ ΠΎΠ΄Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ²Π»ΡΡΡΡΡ:
Β· Π²ΡΠ±ΡΠ°Π½Π½Π°Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°;
Β· ΡΠΈΠ³Π½Π°Π»Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΎΡΠ° «ΠΌΡΡΡ»;
1.3.2.5 ΠΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ
Β· ΠΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π΄Π΅Π»ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΎΡΠΊΡΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ (ΡΠΎΡΠΌΡ).
1.3.2.6 ΠΡΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ²Π»ΡΡΡΡΡ:
Β· ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ Π²ΡΠΈΠ³ΡΡΡΠ΅, Π΅ΡΠ»ΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° ΡΠΎΠ±ΡΠ°Π½Π°.
1.3.2.7 Π Π΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠ·Π΄Π΅Π»ΠΈΡ Π ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ Π²Ρ ΠΎΠ΄ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ:
Β· ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ;
Β· ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ;
Β· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° ΠΈΠ·Π΄Π΅Π»ΠΈΠ΅.
1.3.2.8 ΠΠΎΡΠΈΡΠ΅Π»ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 3,5 Π΄ΡΠΉΠΌΠ° ΠΈ ΠΎΠ±ΡΠ΅ΠΌΠΎΠΌ 1,44 ΠΠ±.
1.3.2.9 ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΈ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΠΎΡΡΡ ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°ΡΡΡ Π² ΠΈΠ·Π΄Π΅Π»ΠΈΠΈ, Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΠΎΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π·Π°ΡΠΈΡΡ.
1.3.2.10 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΠΈ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΎΠΉΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΎΡΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π²ΡΠ΅Ρ ΡΠ΅ΡΡΠ°Ρ . Π’Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π½Π° ΡΡΠ°ΠΏΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
1.3.2.11 Π Π΅ΡΡΠ°ΡΡ ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΈΠ»ΠΈ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠΌ ΡΠ±ΠΎΡΡ Π½Π΅ ΠΏΡΠ΅Π΄ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ.
1.3.2.12 ΠΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡΡΡΡ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ Π½ΠΎΡΠΈΡΠ΅Π»Π΅ΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
1.3.2.13 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΠ‘ΠΠ, ΠΠΠ‘Π’ 19.701−90, ΠΠΠ‘Π’ 2.304−88.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ:
Β· Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅;
Β· Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡ.
Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ «Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡ» Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π»ΠΈΡΡΠΈΠ½Π³ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ Π±Π»ΠΎΠΊ-ΡΡ Π΅ΠΌΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ².
1.4 Π‘ΡΠ°Π΄ΠΈΠΈ ΠΈ ΡΡΠ°ΠΏΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π΄Π²Π΅ ΡΡΠ°Π΄ΠΈΠΈ:
Β· Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅;
Β· Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡ.
ΠΠ° ΡΡΠ°Π΄ΠΈΠΈ «Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅» ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΈΠ·Π΄Π΅Π»ΠΈΡ, ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎ Π·Π°Π΄Π°ΡΠ΅ ΠΈ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° «Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅».
ΠΠ° ΡΡΠ°Π΄ΠΈΠΈ «Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡ» ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡ Π΅ΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π΄Π΅Π»ΠΈΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠ΅ΡΡΠΎΠ², ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠ°ΠΏΠ° ΠΎΡΠΎΡΠΌΠ»ΡΠ΅ΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ «Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡ».
1.5 ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΈ ΠΏΡΠΈΠ΅ΠΌΠΊΠΈ
Π’Π΅ΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ Π½Π° ΡΡΠ°ΠΏΠ΅ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π΄Π΅Π»ΠΈΡ.
ΠΡΠΈΠ΅ΠΌΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π΄Π΅Π»ΠΈΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΡΠ΄Π°ΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½Π½ΡΡ ΡΡΠ°ΠΏΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π΄Π΅Π»ΠΈΡ ΠΈ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΈΡΠΏΡΡΠ°Π½ΠΈΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΡΠ΅ΡΡΠΎΠ².
2.Π ΠΠΠΠ§ΠΠ ΠΠ ΠΠΠΠ’
2.1 ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΈΠ³ΡΡ «ΠΠ°Π·Π°ΠΉΠΊΠ°», Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡΠΎΠ±ΠΎΠ΅ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ Π² ΡΠ²ΡΠ·ΠΈ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ΅Π΅ ΠΏΠΎΠ»Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°ΠΊΡΡΠ²Π°Π΅ΡΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠΉ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΎΠΉ. ΠΠ³ΡΠ° Π·Π°ΡΡΠ³ΠΈΠ²Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡΡ Π±Π»ΠΈΠ·ΠΊΠΎΠΉ ΠΈΠ³ΡΡ «ΠΡΡΠ½Π°ΡΠΊΠΈ», ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅ ΡΠ°ΠΊ Π΄Π°Π²Π½ΠΎ Π±ΡΠ»Π° ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π°.
2.2 Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΈΠ·Π΄Π΅Π»ΠΈΡ
2.2.1 ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ
ΠΠ°Π½Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Windows 95, Windows 98, Windows ME, NT 4.0, Windows 2000, Windows XP.
2.2.2 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΠΎΡΡΠ°Π²Ρ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ΅Π΄ΡΡΠ²
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π΄Π΅Π»ΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, ΠΎΠ±Π»Π°Π΄Π°ΡΡΠΈΠΉ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ:
Β· ΠΎΠ±ΡΠ΅ΠΌ ΠΠΠ£ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 32 ΠΠ±;
Β· ΠΎΠ±ΡΠ΅ΠΌ ΠΆΠ΅ΡΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠ° Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 900 ΠΠ±;
Β· ΠΌΠΈΠΊΡΠΎΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Ρ ΡΠ°ΠΊΡΠΎΠ²ΠΎΠΉ ΡΠ°ΡΡΠΎΡΠΎΠΉ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 133 ΠΠΡ;
Β· ΠΌΠΎΠ½ΠΈΡΠΎΡ Ρ Π³Π»ΡΠ±ΠΈΠ½ΠΎΠΉ ΡΠ²Π΅ΡΠ° 16 Π±ΠΈΡ;
Β· Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ΄ floppy-Π΄ΠΈΡΠΊΠΎΠ².
ΠΠ»Ρ Π±Π΅ΡΠΏΠ΅ΡΠ΅Π±ΠΎΠΉΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°:
Β· ΠΎΠ±ΡΠ΅ΠΌ ΠΠΠ£ 128 ΠΠ±;
Β· ΠΎΠ±ΡΠ΅ΠΌ ΠΆΠ΅ΡΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠ° 3 ΠΠ±;
Β· ΠΌΠΈΠΊΡΠΎΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Ρ ΡΠ°ΠΊΡΠΎΠ²ΠΎΠΉ ΡΠ°ΡΡΠΎΡΠΎΠΉ 333 ΠΠΡ.
2.2.3 Π Π΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠ·Π΄Π΅Π»ΠΈΡ
Β· ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Mazaika. exe;
Β· ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ;
Β· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° ΠΈΠ·Π΄Π΅Π»ΠΈΠ΅.
2.2.4 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΠΈ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠΎΡΠ»Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΎΡΡΠ°Π±ΠΎΡΠ°Π»Π° Π½Π° Π²ΡΠ΅Ρ ΡΠ΅ΡΡΠ°Ρ . Π’Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΠΈΡΡ Π½Π° Π²ΡΠ΅Ρ ΡΡΠ°ΠΏΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
2.2.5 Π£Π΄ΠΎΠ±ΡΡΠ²ΠΎ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΎΠΊ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΈΠ³ΡΡ.
2.2.6 ΠΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΡΡΡ
ΠΠ»Ρ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ Π΄ΠΈΡΠΊΠ΅ΡΡ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΠ°ΠΏΠΊΠΈ «ΠΡΡΡΠΎΠ²ΠΈΠΊ» Π½Π° ΠΆΠ΅ΡΡΠΊΠΈΠΉ Π΄ΠΈΡΠΊ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°.
2.3 ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
2.3.1 ΠΠΎΠ΄ΡΠ»Ρ Unit1
2.3.1.1 Π’Π°Π±Π»ΠΈΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²
β | ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ | Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΏΠ°Π»ΠΈΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² | ΠΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° | ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ | |
Form1 | ; | Caption | ΠΠ°Π·Π°ΠΉΠΊΠ° | ||
AutoSize | false | ||||
MainMenu1 | Standard | Items | Π€Π°ΠΉΠ» ΠΡΠΊΡΡΡΡ ΠΠΎΠ²Π°Ρ ΠΈΠ³ΡΠ° ΠΡΡ ΠΎΠ΄ Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ | ||
OpenPictureDialog1 | Dialogs | ||||
2.3.1.2 ΠΠ½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΡΠΎΡΠΌΡ
2.3.1.2 ΠΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ΅ΠΊ;
2.3.1.3 ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅
ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ «ΡΠΎΠ±ΡΠ°Π½Π½ΠΎΡΡΠΈ» ΠΌΠΎΠ·Π°ΠΉΠΊΠΈ;
2.3.1.4 ΠΡΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΈΠ³ΡΡ.
2.3.1.5 ΠΠ»ΠΎΠΊ-ΡΡ Π΅ΠΌΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ²
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π, ΡΡΡ. 13
2.3.1.6 Π’Π΅ΠΊΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π, ΡΡΡ. 25
ΠΠ ΠΠΠΠΠΠΠΠ―
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π
ΠΠΈΡΡΠΈΠ½Π³ ΠΌΠΎΠ΄ΡΠ»Ρ Unit1
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes,
Graphics, Controls, Forms, Dialogs, ExtDlgs, Menus;
type
TForm1 = class (TForm)
MainMenu1: TMainMenu;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
C1: TMenuItem;
N5: TMenuItem;
OpenPictureDialog1: TOpenPictureDialog;
procedure FormCreate (Sender: TObject);
procedure FormMouseDown (Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormPaint (Sender: TObject);
procedure Load;
procedure Refresh;
procedure New;
procedure N3Click (Sender: TObject);
procedure N2Click (Sender: TObject);
procedure C1Click (Sender: TObject);
procedure N5Click (Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
const
H=4;
W=4; // ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠΎΠ»Ρ 4*4 ΠΊΠ»Π΅ΡΠΊΠΈ
var
widt, heig: integer; // ΡΠΈΡΠΈΠ½Π° ΠΈ Π²ΡΡΠΎΡΠ° ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ»Π΅ΡΠΊΠΈ
pole:array[1.H, 1. W] of byte; // ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΏΠΎΠ»Ρ
zx, zy: integer; // ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΏΡΡΡΠΎΠΉ ΠΊΠ»Π΅ΡΠΊΠΈ
pos:array[1.H, 1. W] of byte =((1, 2, 3, 4),(5, 6, 7, 8),(9,10,11,12),(13,14,15, 0)); // Π²ΡΠΈΠ³ΡΡΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ
pic:TBitmap; // ΡΠ°ΠΌΠ° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°
procedure TForm1. New;
var
f: string[20]; // ΡΠ°ΠΉΠ» Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΠΎΠΉ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ
i, j: integer;
begin
f:='picture10.bmp';
try
pic.LoadFromFile (f);
except
on EFopenError do
begin
ShowMessage ('ΠΡΠΈΠ±ΠΊΠ° Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΠ»Π°');
Form1.Close;
end;
end;
heig:=Pic.Height div H; // Π Π°Π·ΠΌΠ΅Ρ ΠΊΠ»Π΅ΡΠΊΠΈ
widt:=Pic.Width div W;
ClientWidth:=widt*W; //Π Π°Π·ΠΌΠ΅Ρ ΡΠΎΡΠΌΡ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ
ClientHeight:=heig*H;
for i:=1 to H do
for j:=1 to W do
pole[i, j]: =pos[i, j];
Form1.Refresh; // ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ»Π΅ΡΠΎΠΊ
Form1.Load; // Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΠΎΠ»Ρ
end;
// ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ°ΠΊΡ Π²ΡΠΈΠ³ΡΡΡΠ°
function GameOver: boolean;
var
rw, cl: integer;
i:integer;
begin
rw:=1;
cl:=1;
GameOver:=True; // ΠΊΠ»Π΅ΡΠΈ ΡΠ°ΡΡΡΠ°Π²Π»Π΅Π½Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ
for i:=1 to 15 do
begin
if pole[rw, cl]<>i then
begin
GameOver:=False;
break;
end;
if cl<4
then inc (cl)
else begin
cl:=1;
inc (rw);
end;
end;
end;
// Ρ ΠΎΠ΄ Π² ΡΠΎΡΠ΅Π΄Π½ΡΡ ΠΏΡΡΡΡΡ ΠΊΠ»Π΅ΡΠΊΡ
procedure Go (clickx, clicky: integer);
var
r:integer;
begin
if not ((abs (clickx-zx)=1) and (clicky-zy=0) or // ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Ρ ΠΎΠ΄Π°
(abs (clicky-zy)=1) and (clickx-zx=0))
then exit;
pole[zy, zx]: =Pole[clicky, clickx]; // ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΈΠ· [x, y] Π² [zx, zy]
pole[clicky, clickx]: =0;
zx:=clickx;
zy:=clicky;
Form1.Load; // ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎΠ»Ρ
if GameOver then
begin
pole[4,4]: =16;
Form1.Load;
r:=MessageDlg ('ΠΡ Π²ΡΠΈΠ³ΡΠ°Π»ΠΈ!'+ #13+'Π‘ΡΠ³ΡΠ°Π΅ΠΌ Π΅ΡΡ?', mtInformation,[mbYes, mbNo], 0);
if r=mrNo then Form1. Close;
Form1.New;
end;
end;
// ΠΊΠ»ΠΈΠΊ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΊΠ΅
procedure TForm1. FormMouseDown (Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
clickx, clicky: integer; // ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΊΠ»ΠΈΠΊΠ°Π΅ΠΌΠΎΠΉ ΠΊΠ»Π΅ΡΠΊΠΈ
begin
clickx:=Trunc (X/widt)+1; // ΠΏΠ΅ΡΠ΅Π²Π΅Π΄ΡΠΌ ΡΠ΅Π»ΡΠΎΠΊ ΠΌΡΡΠΈ Π² ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΊΠ»Π΅ΡΠΊΠΈ
clicky:=Trunc (Y/heig)+1;
Go (clickx, clicky);
end;
procedure TForm1. Load; // ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° Π·Π°Π³ΡΡΠ·ΠΊΡ ΠΏΠΎΠ»Ρ
var
into, outof: Trect; // Π²Π²ΠΎΠ΄ ΠΈ Π²ΡΠ²ΠΎΠ΄
lx, ly: integer; // ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡΠ³Π»Π° Π²Π²ΠΎΠ΄Π°
i, j: integer;
begin
for i:=1 to W do // ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΊΠ»Π΅ΡΠΎΠΊ
for j:=1 to H do
begin
ly:=((pole[i, j]-1) div W) * heig; // ΠΏΡΠΈΡΠ²ΠΎΠΈΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡΠ³Π»Π° Π²Π²ΠΎΠ΄Π° Π½ΠΎΠΌΠ΅Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ
lx:=((pole[i, j]-1) mod W) * widt;
into:=Bounds (lx, ly, widt, heig);
outof:=Bounds ((j-1)*widt,(i-1)*heig, widt, heig);
if pole[i, j]<>0
then Canvas. CopyRect (outof, pic. Canvas, into)
else Canvas. Rectangle ((j-1)*widt,(i-1)*heig, j*widt, i*heig);
end;
end;
procedure TForm1. refresh; // «ΡΡΡΡΠ΅Ρ» ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ
var
x1,y1:integer; // ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΏΡΡΡΠΎΠΉ ΠΊΠ»Π΅ΡΠΊΠΈ
x2,y2:integer; // Π²Π·ΡΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ ΠΈΠ· ΡΡΠΎΠΉ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΈ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ Π΅Ρ Ρ ΠΏΡΡΡΠΎΠΉ
n:integer; // Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ Ρ ΠΎΠ΄Π°
i:integer;
begin
x1:=4;
y1:=4;
randomize;
for i:=1 to 150 do // Π²Π°ΡΠΈΠ°Π½ΡΡ ΡΠ°ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ
begin
repeat
x2:=x1;
y2:=y1;
n:=random (4)+1;
case n of
1:dec (x2);
2:inc (x2);
3:dec (y2);
4:inc (y2);
end;
until (x2>=1) and (x2<=4) and (y2>=1) and (y2<=4);
pole[y1,x1]: =pole[y2,x2]; // ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ
pole[y2,x2]: =0;
x1:=x2;
y1:=y2;
end;
zx:=x1; // ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΏΡΡΡΠΎΠΉ ΠΊΠ»Π΅ΡΠΊΠΈ
zy:=y1;
end;
procedure TForm1. FormCreate (Sender: TObject);
begin
pic:=TBitMap.Create;
New;
end;
procedure TForm1. FormPaint (Sender: TObject);
begin
Form1.Load;
end;
procedure TForm1. N3Click (Sender: TObject);
begin
close;
end;
procedure TForm1. N2Click (Sender: TObject);
var i, j: integer;
begin
heig:=Pic.Height div H; // Π Π°Π·ΠΌΠ΅Ρ ΠΊΠ»Π΅ΡΠΊΠΈ
widt:=Pic.Width div W;
ClientWidth:=widt*W; //Π Π°Π·ΠΌΠ΅Ρ ΡΠΎΡΠΌΡ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ
ClientHeight:=heig*H;
for i:=1 to H do
for j:=1 to W do
pole[i, j]: =pos[i, j];
Form1.Refresh; // ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ»Π΅ΡΠΎΠΊ
Form1.Load; // Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΠΎΠ»Ρ
end;
procedure TForm1. C1Click (Sender: TObject);
begin
showmessage ('ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΊ ΠΊΡΡΡΠΎΠ²ΠΎΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ');
end;
procedure TForm1. N5Click (Sender: TObject);
var
f: string[20]; // ΡΠ°ΠΉΠ» Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΠΎΠΉ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ
i, j: integer;
begin
openpicturedialog1.Execute;
try
pic.LoadFromFile (openpicturedialog1.FileName);
except
on EFopenError do
begin
ShowMessage ('ΠΡΠΈΠ±ΠΊΠ° Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΠ»Π°');
Form1.Close;
end;
end;
heig:=Pic.Height div H; // Π Π°Π·ΠΌΠ΅Ρ ΠΊΠ»Π΅ΡΠΊΠΈ
widt:=Pic.Width div W;
ClientWidth:=widt*W; //Π Π°Π·ΠΌΠ΅Ρ ΡΠΎΡΠΌΡ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ
ClientHeight:=heig*H;
for i:=1 to H do
for j:=1 to W do
pole[i, j]: =pos[i, j];
Form1.Refresh; // ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ»Π΅ΡΠΎΠΊ
Form1.Load; // Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΠΎΠ»Ρ
end;
end.