ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² ΡƒΡ‡Ρ‘Π±Π΅, ΠΎΡ‡Π΅Π½ΡŒ быстро...
Π Π°Π±ΠΎΡ‚Π°Π΅ΠΌ вмСстС Π΄ΠΎ ΠΏΠΎΠ±Π΅Π΄Ρ‹

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ достиТимости Π³ΠΎΡ€ΠΎΠ΄Π° Π² измСняСмой систСмС двусторонних Π΄ΠΎΡ€ΠΎΠ³

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π‘Π°ΠΌΠ° Π·Π°Π΄Π°Ρ‡Π° являСтся Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠ°ΠΊ для общСствСнных прСдприятий, Ρ‚Π°ΠΊ ΠΈ Π΄Π»Ρ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ быстро ΠΈ Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€Π½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π° Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π’ ΡΠ°ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ созданиС систСмы Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ достиТимости Π΄ΠΎ Π»ΡŽΠ±ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°, Ρ‚Π΅ΠΌ самым позволяя ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ свой ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ Π·Π°Ρ€Π°Π½Π΅Π΅. ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Ρ‡Π΅Ρ€Π΅Π·… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ достиТимости Π³ΠΎΡ€ΠΎΠ΄Π° Π² измСняСмой систСмС двусторонних Π΄ΠΎΡ€ΠΎΠ³ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

— 6 ;

— 4;

1. ВСхничСскоС Π·Π°Π΄Π°Π½ΠΈΠ΅

1.1 Основания для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

1.2 НазначСниС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

1.3 РассмотрСнныС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹

1.4 Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹

1.5 ВрСбования ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ издСлию

2. Π Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

2.1 ΠœΠΎΠ΄ΡƒΠ»ΠΈ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

2.2 ОписаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ модуля Unit 1

2.3 ОписаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° модуля Unit 2

2.4 ОписаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ модуля Unit 3

2.5 ОписаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ модуля Unit 4

2.6 ВСстовыС Π½Π°Π±ΠΎΡ€Ρ‹ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Данная курсовая Ρ€Π°Π±ΠΎΡ‚Π° Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊΡƒΡŽ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ, ΠΊΠ°ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ достиТимости Π³ΠΎΡ€ΠΎΠ΄Π° Π² ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΉ систСмС двусторонних Π΄ΠΎΡ€ΠΎΠ³.

Π­Ρ‚Ρƒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ цСлСсообразно Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Π³Ρ€Π°Ρ„Ρ‹.

Π‘Π°ΠΌΠ° Π·Π°Π΄Π°Ρ‡Π° являСтся Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠ°ΠΊ для общСствСнных прСдприятий, Ρ‚Π°ΠΊ ΠΈ Π΄Π»Ρ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ быстро ΠΈ Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€Π½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π° Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π’ ΡΠ°ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ созданиС систСмы Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ достиТимости Π΄ΠΎ Π»ΡŽΠ±ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°, Ρ‚Π΅ΠΌ самым позволяя ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ свой ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ Π·Π°Ρ€Π°Π½Π΅Π΅.

Данная Π·Π°Π΄Π°Ρ‡Π° ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ряд Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π³Ρ€Π°Ρ„ΠΎΠ², Ρ‚Π°ΠΊ ΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ модСлирования. Но Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΈΠΌΠ΅Π΅Ρ‚ ряд прСимущСств, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ понятный Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΎΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½Π½ΠΎΠΌΡƒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ интСрфСйс, ΡƒΠ΄ΠΎΠ±Π½ΡƒΡŽ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΡŽ ΠΈ Π±Ρ‹ΡΡ‚Ρ€ΠΎΡ‚Ρƒ расчСтов.

1. ВСхничСскоС Π·Π°Π΄Π°Π½ΠΈΠ΅

1.1 Основания для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

ОснованиСм для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° слуТит Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎ ΠΊΡƒΡ€ΡΠΎΠ²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·Ρ‹ΠΊΠ°Ρ… высокого уровня» .

1.2 НазначСниС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Π”Π°Π½Ρ‹ нСсколько Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², соСдинСнных ΠΌΠ΅ΠΆΠ΄Ρƒ собой (ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ) двусторонними Π΄ΠΎΡ€ΠΎΠ³Π°ΠΌΠΈ. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ построив ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ 3 Π½ΠΎΠ²Ρ‹Π΅ Π΄ΠΎΡ€ΠΎΠ³ΠΈ, ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°, А Π΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π΄ΠΎ Π²ΡΠ΅Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ². ΠžΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ графичСски, Π²Ρ‹Π΄Π΅Π»ΠΈΠ² Ρ†Π²Π΅Ρ‚ΠΎΠΌ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

1.3 РассмотрСнныС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹

На ΡΡ‚Π°ΠΏΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π±Ρ‹Π»ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ 2 срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:

— C++ Builder 6;

— Borland Delphi 7;

ΠŸΡ€ΠΈ постановкС Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ издСлия Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Borland Delphi 7 Π² ΡΠΈΠ»Ρƒ лСгкости проСктирования ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса.

1.4 Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ издСлия Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ согласно Π“ΠžΠ‘Π’ 19.701−90, Π“ΠžΠ‘Π’ 2.304−88. Единая систСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

1.5 ВрСбования ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ издСлию

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅:

— ΡΠΈΡΡ‚Π΅ΠΌΠ° Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², соСдинСнных ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ собой;

— Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.gph, содСрТащий вносимыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ:

— Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.gph, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π΄Π°Π½Π½Ρ‹Π΅,

— Π³Ρ€Π°Ρ„ичСскоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ систСм Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², соСдинСнных ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ собой;

— ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° смСТности ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° достиТимости;

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ

Π€ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ хранСния Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… 1.5.1 ΠΈ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΉ структурС ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌ.

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° *.ghp, ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° смСТности. Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° *.ghp; графичСскоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ систСм Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², соСдинСнных ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ собой.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ограничСния, ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΠΈΠ·Π΄Π΅Π»ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах Windows. Для пСрСноса ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ срСдства

Π Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ издСлия

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΠΈΠ·Π΄Π΅Π»ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹:

— Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π΄Π°Π½Π½Ρ‹Ρ… (Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.gph);

— ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» для запуска прилоТСния;

— ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ докумСнтация Π½Π° ΠΈΠ·Π΄Π΅Π»ΠΈΠ΅.

НоситСли ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π² Π²ΠΈΠ΄Π΅ Ρ„Π°ΠΉΠ»Π° Π½Π° ΠΆΠ΅ΡΡ‚ΠΊΠΎΠΌ дискС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ВрСбования ΠΊ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΠΈ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π²ΡΠ΅Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… тСстах. ВСсты трСбуСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° ΡΡ‚Π°ΠΏΠ΅ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

РСстарт

Π’ ΡΠ»ΡƒΡ‡Π°ΡΡ… рСстарта Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Π”Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈ рСстартС Π½Π΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ.

ВрСбования ΠΊ ΡΠΎΡΡ‚Π°Π²Ρƒ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ тСхничСских срСдств

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ модуля Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ дисковоС пространство Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 610 Кб, свободная опСративная ΠΏΠ°ΠΌΡΡ‚ΡŒ Π² Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 12 Мб, Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ экрана Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 1024*768, Ρ‚Π°ΠΊΠΆΠ΅ микропроцСссор 80 486 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅.

2. Π Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

2.1 ΠœΠΎΠ΄ΡƒΠ»ΠΈ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² ΡΠ΅Π±Ρ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹:

— Π½Π°Π±ΠΎΡ€ ΠΊΠ½ΠΎΠΏΠΎΠΊ управлСния;

— Π½Π°Π±ΠΎΡ€ счСтчиков;

— ΠΌΠ΅Π½ΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

— Ρ‚Π°Π±Π»ΠΈΡ†Π° смСТности;

— Ρ‚Π°Π±Π»ΠΈΡ†Π° достиТимости;

Листинг ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ прСдставлСн Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ А.

ОписаниС внСшнСго Π²ΠΈΠ΄Π° Ρ„ΠΎΡ€ΠΌΡ‹ прСдоставлСно Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π“.

2.2 ОписаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ модуля Unit 1

Π‘Π»ΠΎΠΊ-схСмы Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ прСдоставлСны Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π‘.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button1Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ *Sender.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Ρ„Π»Π°ΠΆΠΊΡƒ reb присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, ΠΏΠ΅Ρ€Ρƒ присваиваСтся Ρ€Π΅ΠΆΠΈΠΌ пСрСрисовки, xx ΠΈ yy присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ 0;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Ρ„Π»Π°ΠΆΠΎΠΊ reb, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Ρ€ΠΈcΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π±Ρ€ΠΎ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Π΄ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button2Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ *Sender.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Ρ„Π»Π°ΠΆΠΊΡƒ reb присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false, ΠΏΠ΅Ρ€Ρƒ присваиваСтся Ρ€Π΅ΠΆΠΈΠΌ пСрСрисовки, xx ΠΈ yy присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ -100, Ρ„Π»Π°ΠΆΠΊΡƒ ver присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true ;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Ρ„Π»Π°ΠΆΠΎΠΊ reb, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π±Ρ€ΠΎ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Π΄ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Ρ„Π»Π°ΠΆΠΎΠΊ ver, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button3Click (Sender: TObject)

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ *Sender.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: вызываСтся Ρ„ΠΎΡ€ΠΌΠ° 3, вызываСтся ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° redrow, которая рисуСт Π½ΠΎΠ²Ρ‹Π΅ Π΄ΠΎΡ€ΠΎΠ³ΠΈ ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ся ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Button9. Click, которая пСрСрисовываСт всё.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.Button4Click(Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ *Sender;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Ρ„Π»Π°ΠΆΠΊΡƒ del_ver присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Ρ„Π»Π°ΠΆΠΎΠΊ del_ver, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button5Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: запись ver;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π³ΠΎΡ€ΠΎΠ΄Π°, располоТСнныС Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1 Π²Ρ‹ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΠΈ. ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° redrow пСрСрисовываСт ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: step, которая позволяСт Π²Ρ‹ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ ΠΏΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΠΈ;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button6Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: запись ver;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…: запись ver;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ», ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ 0 ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ся ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Button9. Click, которая Π·Π°Π΄Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ x ΠΈ y ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ».

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: iсчСтчик, ver[i]. x ΠΈ ver[i]. y — ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²Π΅Ρ€ΡˆΠΈΠ½.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button7Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.gph;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΈΠ· Ρ„Π°ΠΉΠ»Π° с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.ghp ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π΄Π°Π½Π½Ρ‹Π΅ для изобраТСния Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1 систСмы Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: i, j, kсчСтчики, f — имя Ρ„Π°ΠΉΠ»Π°.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button8Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° смСТности;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.gph ΠΈ ΠΈΠΌΠ΅Π½Π΅ΠΌ f;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π½Π° Π΄ΠΈΡΠΊΠ΅ создаСтся Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.gph, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ» записываСтся содСрТаниС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: i, j, k — счСтчики, f — имя Ρ„Π°ΠΉΠ»Π°.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button9Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: запись ver;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: устанавливаСтся step, присваиваСтся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ns ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², Ссли Π΅ΡΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄Π°, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ€Π°Π²Π½Ρ‹ 0 ΠΎΠ½ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅, Π½Π΅ Π½ΡƒΠ»Π΅Π²Ρ‹Π΅, ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ся ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСрисовки.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: step — шаг, ns — количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², i — счСтчик, vet[i] - запись Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ с Π΅Ρ‘ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button10Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ *Sender;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ячСйки ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности ΠΎΠ±Π½ΡƒΠ»ΡΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· счСтчик, послС Ρ‡Π΅Π³ΠΎ вызываСтся ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСрисовки Button9.Click.

ИспользованиС Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…: i — счСтчик, n — количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button11Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности, Π΄Π°Π½Π½Ρ‹Π΅ с 2-Ρ… счСтчиков Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ достиТимости;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности создаСтся ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° достиТимости, послС Ρ‡Π΅Π³ΠΎ Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ» ΠΈΠ΄Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ достиТимости ΠΏΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ Π€Π»ΠΎΠΉΠ΄Π°. ПослС этого ΠΈΠ΄Ρ‘Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· условиС Π½Π° Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°, А Π² Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π³ΠΎΡ€ΠΎΠ΄ Π’. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выводится Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ Π² Ρ„ΠΎΡ€ΠΌΠ΅ тСкста.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: i, j, k — счСтчики, dost — Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ динамичСский массив.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. Button12Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности, Π΄Π°Π½Π½Ρ‹Π΅ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ достиТимости, Π΄Π°Π½Π½Ρ‹Π΅ с ΡΡ‡Π΅Ρ‚Ρ‡ΠΈΠΊΠ° Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: графичСскоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΈ Ρ‚Скстовая информация, ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° достиТимости.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: вызываСтся ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Matrix, которая составляСт ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ достиТимости ΠΏΠΎ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ смСТности. ПослС выполнСния ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Matrix, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ doroga ΠΈ vver ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ количСство Π΄ΠΎΡ€ΠΎΠ³, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ. Π”Π°Π»Π΅Π΅ выполняСтся Ρ†ΠΈΠΊΠ» Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ достиТимости, Ссли ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° содСрТит Π²ΠΎ Π²ΡΠ΅Ρ… ячСйках 1, Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся сообщСниС «Π’сС Π³ΠΎΡ€ΠΎΠ΄Π° достиТимы», послС Ρ‡Π΅Π³ΠΎ начинаСтся Ρ†ΠΈΠΊΠ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ выполняСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… Π΄ΠΎΡ€ΠΎΠ³.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: i, j, kсчСтчики, dost — Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ динамичСский массив, dorog, vver — количСства Π΄ΠΎΡ€ΠΎΠ³, result — Ρ„Π»Π°ΠΆΠΎΠΊ Π½Π° Π³Ρ€Π°Ρ„ичСскоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° function Matrix;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: пСрСмСнная doroga, пСрСмСнная vver, ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° смСТности.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° достиТимости, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ doroga, vver.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности, подсчитываСт количСство Π½ΡƒΠΆΠ½Ρ‹Ρ… Π΄ΠΎΡ€ΠΎΠ³.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: doroga, vver — количСство Π΄ΠΎΡ€ΠΎΠ³, dost — Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ динамичСский массив.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° function findver (x, y, rad:integer):Integer;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: x, y, rad;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: findver;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π½ΠΎΠΌΠ΅Ρ€ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ ΠΏΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ x ΠΈ y ΠΈ Ρ€Π°Π΄ΠΈΡƒΡΡƒ, послС Ρ‡Π΅Π³ΠΎ Π²Ρ‹Π΄Π°Π΅Ρ‚ Π΅Ρ‘ Π½ΠΎΠΌΠ΅Ρ€.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: x, y — ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, rad — радиус окруТности.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. redrow;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², запись ver;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСрисовываСт ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: i, j — счСтчики;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. FormCreate (Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ *Sender;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ²;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ pos ΠΈ n ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ‚ся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,Y: Integer);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ xx ΠΈ yy, Ρ„Π»Π°ΠΆΠΊΠΈ ver, reb2;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ зависит ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ„Π»Π°ΠΆΠΊΠΎΠ² ver ΠΈ reb2, Ссли ΠΎΠ½ΠΈ true, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎ Ρ„Π»Π°ΠΆΠΊΡƒ ver рисуСт эллипс с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ Ρ…, Ρƒ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1, Π° ΠΏΠΎ Ρ„Π»Π°ΠΆΠΊΡƒ reb2 ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° рисуСт Ρ€Π΅Π±Ρ€ΠΎ (Π΄ΠΎΡ€ΠΎΠ³Ρƒ) Π΄ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Ρ„Π»Π°ΠΆΠΊΠΈ del_ver, reb, reb2, ver; ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΊΠ»ΠΈΠΊΠ° x, y;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ зависит ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ„Π»Π°ΠΆΠΊΠΎΠ² del_ver, reb, reb2, ver.

Если del_ver true, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° удаляСт Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ, с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π»Π°ΠΆΠΊΠΎΠ² ver, reb, reb2, del_ver измСняСт Π½Π° false, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ±ΠΈΡ€Π°Π΅Ρ‚ Π½Π° -1 строчку ΠΈ ΡΡ‚ΠΎΠ»Π±Π΅Ρ† Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ смСТности ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ достиТимости, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Π΅.

Если Ρ„Π»Π°ΠΆΠΎΠΊ reb true, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° рисуСт линию ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Π΄ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Если другая Π²Π΅Ρ€ΡˆΠΈΠ½Π° ΡƒΠΊΠ°Π·Π°Π½Π° Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π°, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ reb становится false.

Если reb2 true, Ρ‚ΠΎ reb false, reb2 false ΠΈ ΡΡ‚роится линия ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Π΄ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΈ Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ смСТности Π² ΡΡ‡Π΅ΠΉΠΊΠ΅ ставится Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «1», ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ Π½Π° Ρ€Π΅Π±Ρ€ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ этими Π³ΠΎΡ€ΠΎΠ΄Π°ΠΌΠΈ.

Если ver true, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² увСличиваСтся Π½Π° +1, Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π² ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ ver — запись ΠΈ Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ смСТности ΠΈ Π΄ΠΎΡΡ‚иТимости добавляСтся строчка ΠΈ ΡΡ‚ΠΎΠ»Π±Π΅Ρ† с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ Π³ΠΎΡ€ΠΎΠ΄Π°.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: xx, yy — ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image1, i, j, k, i2 — счСтчики;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. N5Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.N2Click(Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Button7. Click;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.N3Click(Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Button8. Click;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.N4Click(Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: созданиС Π½ΠΎΠ²ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: i, j — счСтчики ;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. StringGrid3KeyPress (Sender: TObject; var Key: Char);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: числа;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ числа Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ достиТимости, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π²Π²ΠΎΠ΄ чисСл, ΠΊΡ€ΠΎΠΌΠ΅ 0 ΠΈ 1 ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ клавиш, ΠΊΡ€ΠΎΠΌΠ΅ Backspace.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.Edit1Change(Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: число Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ²;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности, ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: создаСтся ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° смСТности ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° достиТимости Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ [pos*pos], Π³Π΄Π΅ pos — количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ячССк ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ достиТимости Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ «0».

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: pos, n — количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², i, j-счСтчики.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.Image1MouseDown (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ мСста ΠΊΠ»ΠΈΠΊΠ° Π»Π΅Π²ΠΎΠΉ клавишСй ΠΌΡ‹ΡˆΠΈ X ΠΈ Y ;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ контСкстного мСню Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Ссли Π½Π°ΠΆΠ°Ρ‚Π° Π½Π΅ Π»Π΅Π²Π°Ρ клавиша ΠΌΡ‹ΡˆΠΈ, Ρ‚ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ контСкстноС мСню.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.N7Click(Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Button2. Click;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.N8Click(Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Button1. Click;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.N9Click(Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Button4. Click;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.StringGrid3KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅; ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ redrow.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1.vvChange(Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ с ΡΡ‡Π΅Ρ‚Ρ‡ΠΈΠΊΠ° vv. Value;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄Π΅Π»Π°Π΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° Π²Π²ΠΎΠ΄ Π² ΡΡ‡Π΅Ρ‚Ρ‡ΠΈΠΊ vv. Value Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ большС значСния количСства Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: pos — количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. IsvChange (Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ с ΡΡ‡Π΅Ρ‚Ρ‡ΠΈΠΊΠ° Isv. Value;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄Π΅Π»Π°Π΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° Π²Π²ΠΎΠ΄ Π² ΡΡ‡Π΅Ρ‚Ρ‡ΠΈΠΊ Isv. Value Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ большС значСния количСства Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: pos — количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. IzverChange (Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π΄Π°Π½Π½Ρ‹Π΅ с ΡΡ‡Π΅Ρ‚Ρ‡ΠΈΠΊΠ° Izver. Value;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄Π΅Π»Π°Π΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° Π²Π²ΠΎΠ΄ Π² ΡΡ‡Π΅Ρ‚Ρ‡ΠΈΠΊ Izver. Value Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ большС значСния количСства Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: pos — количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. N6Click (Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π²Ρ‹Π·ΠΎΠ² Ρ„ΠΎΡ€ΠΌΡ‹ 2;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure redrow_result_true;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², запись ver;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ redrow Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ выдСлСния ΠΎΡ‚Π²Π΅Ρ‚Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π·Π΅Π»Π΅Π½Ρ‹ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ всСх Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π° А.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: i, j — счСтчики.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure redrow_result_false;

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: количСство Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², запись ver;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ redrow Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ выдСлСния ΠΎΡ‚Π²Π΅Ρ‚Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС синим, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π° А.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: i, j — счСтчики.

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm1. StringGrid3Set (Sender: TObject; ACol, ARow: Integer; const Value: String);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выполняСт Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности симмСтрично ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure Dostizhimost(izver:integer);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½ΠΎΠΌΠ΅Ρ€ Π³ΠΎΡ€ΠΎΠ΄Π°;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: тСкстовоС сообщСниС ΠΎ Π΄ΠΎΡΡ‚иТимости ΠΈΠ»ΠΈ Π½Π΅ Π΄ΠΎΡΡ‚иТимости Π΄ΠΎ Π²ΡΠ΅Ρ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π° А;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° строит ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ достиТимости ΠΏΠΎ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ смСТности, Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ Π΄ΠΎ Π²ΡΠ΅Ρ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°, А Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ» ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСниС с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: dost — Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ динамичСский массив, ΠΈΠ»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° достиТимости; i, j, k — счСтчики.

2.3 ОписаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° модуля Unit 2

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm2. Label1Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выполняСт Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ 2 ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡƒ Π½Π° ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

2.4 ОписаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ модуля Unit 3

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm3. Button1Click (Sender: TObject);

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

2.5 ОписаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ модуля Unit 4

ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure TForm4. Button1Click (Sender: TObject)

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚;

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выполняСт Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ заставочной Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ»Π°Π²ΠΈΡˆΡƒ «ΠžΠš».

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ внСшниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π½Π΅Ρ‚.

2.6 ВСстовыС Π½Π°Π±ΠΎΡ€Ρ‹ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ интСрфСйса Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ тСстовыС Π½Π°Π±ΠΎΡ€Ρ‹:

1. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° заставочная Ρ„ΠΎΡ€ΠΌΠ°.

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΠš»;

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ заставочной Ρ„ΠΎΡ€ΠΌΡ‹, появлСниС ΠΎΠΊΠ½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π’, рисунок 1)

2. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π° Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image1.

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° главная Ρ„ΠΎΡ€ΠΌΠ°;

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ 1» ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π»Π΅Π²ΠΎΠΉ клавишСй ΠΌΡ‹ΡˆΠΈ Π½Π° ΠΎΠ±Π»Π°ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image1;

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1 появится эллипс с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ Π³ΠΎΡ€ΠΎΠ΄Π° Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ ΠΆΠ΅Π»Ρ‚ΠΎΠ³ΠΎ Ρ†Π²Π΅Ρ‚Π°. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 2)

3. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΡ€ΠΎΠ³ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π³ΠΎΡ€ΠΎΠ΄Π°ΠΌΠΈ;

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° головная Ρ„ΠΎΡ€ΠΌΠ°, ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ 2 Π³ΠΎΡ€ΠΎΠ΄Π°, Π½Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ собой Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΉ.

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄ΠΎΡ€ΠΎΠ³Ρƒ» Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ Π² ΠΊΠΎΠ½Ρ‚Скстном мСню, послС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π½Π° Π³ΠΎΡ€ΠΎΠ΄ 1 ΠΈ Π³ΠΎΡ€ΠΎΠ΄ 2.

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1 ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π³ΠΎΡ€ΠΎΠ΄Π°ΠΌΠΈ появится линия, Π½Π° ΠΊΠΎΠ½Ρ†Π°Ρ… ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ располоТСно ΠΏΠΎ 4 красных ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… эллипса Ρ€Π°Π·Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΌΠ΅Ρ‚Ρ€Π°. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 3)

4. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π³ΠΎΡ€ΠΎΠ΄Π°.

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° головная Ρ„ΠΎΡ€ΠΌΠ°, имССтся хотя Π±Ρ‹ 2 Π³ΠΎΡ€ΠΎΠ΄Π° Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1.

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄» Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ Ρ‡Π΅Ρ€Π΅Π· контСкстноС мСню.

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1 исчСзнСт ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³ΠΎΡ€ΠΎΠ΄Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π»Π΅Π²ΠΎΠΉ клавишСй ΠΌΡ‹ΡˆΠΈ, Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности ΠΈ Π΄ΠΎΡΡ‚иТимости Π½Π° -1 строку ΠΈ ΡΡ‚ΠΎΠ»Π±Π΅Ρ† ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΡ€ΠΎΠ³, Ссли ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ ΠΎΡ‚ ΡΡ‚ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 4)

5. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: просмотр задания;

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° главная Ρ„ΠΎΡ€ΠΌΠ°;

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π—Π°Π΄Π°Π½ΠΈΠ΅»;

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: появлСниС Ρ„ΠΎΡ€ΠΌΡ‹, с ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ΠΌ задания, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ выполняСт данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 5)

6. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°, А Π² Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π³ΠΎΡ€ΠΎΠ΄ Π’;

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: Π·Π°Π΄Π°Π½Π° систСма Π΄ΠΎΡ€ΠΎΠ³ ΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚, ΡƒΠΊΠ°Π·Π°Π½ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ Π³ΠΎΡ€ΠΎΠ΄ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° ΠΊΠ»Π°Π²ΠΈΡˆΡƒ «ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ»;

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π²Ρ‹Π²ΠΎΠ΄ сообщСния Π½Π° Π³Π»Π°Π²Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ ΠΎ Π΄ΠΎΡΡ‚иТимости ΠΈΠ»ΠΈ Π½Π΅ Π΄ΠΎΡΡ‚иТимости ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°, А Π² ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π³ΠΎΡ€ΠΎΠ΄ Π’. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 6)

7. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: достиТимости Π΄ΠΎ Π²ΡΠ΅Ρ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π° А.

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: Π·Π°Π΄Π°Π½Π° систСма Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π³ΠΎΡ€ΠΎΠ΄ А.

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ»;

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π²Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π½Π° Π³Π»Π°Π²Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ Π² Π²ΠΈΠ΄Π΅ графичСского Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ с Ρ†Π²Π΅Ρ‚ΠΎΠΌ Π΄ΠΎΡ€ΠΎΠ³:

— Π΅ΡΠ»ΠΈ Π΄ΠΎΡ€ΠΎΠ³ΠΈ Π·Π΅Π»Π΅Π½Ρ‹Π΅ — всС Π³ΠΎΡ€ΠΎΠ΄Π° достиТимы ΠΈΠ· Π³ΠΎΡ€ΠΎΠ΄Π° А;

— Π΅ΡΠ»ΠΈ Π΄ΠΎΡ€ΠΎΠ³ΠΈ ΠΆΠ΅Π»Ρ‚Ρ‹Π΅ — Π½Π΅ Π²ΡΠ΅ Π³ΠΎΡ€ΠΎΠ΄Π° достиТимы ΠΈΠ· Π³ΠΎΡ€ΠΎΠ΄Π° А; (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 7(Π°, Π±))

8. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ количСства Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· счСтчик.

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1 имССтся хотя Π±Ρ‹ 1 Π³ΠΎΡ€ΠΎΠ΄.

ВСстовый случай: ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ счСтчика количСства Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1 появится Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ количСство Π³ΠΎΡ€ΠΎΠ΄. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 8)

9. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π³Ρ€Π°Ρ„Π° ΠΈΠ· Ρ„Π°ΠΉΠ»Π°.

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: имССтся Ρ„Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° *.gph с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности.

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» Π³Ρ€Π°Ρ„Π° с Ρ„Π°ΠΉΠ»Π°» ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊ.

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности ΠΏΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° ΠΈ Π³Ρ€Π°Ρ„ичСскоС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image1. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 9)

10. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: сохранСния Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Π³Ρ€Π°Ρ„Π° Π² Ρ„Π°ΠΉΠ».

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: имССтся систСма Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π³Ρ€Π°Ρ„ Π² Ρ„Π°ΠΉΠ»», ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ мСста сохранСния Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊ ΠΈ ΠΈΠΌΡ Ρ„Π°ΠΉΠ»Π°.

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π½Π° Π΄ΠΈΡΠΊΠ΅ появится Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π΄Π°Π» ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ *.gph, содСрТащий Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ смСТности. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 10)

11. Π‘Π»ΡƒΡ‡Π°ΠΉ использования: ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ всСх Π΄ΠΎΡ€ΠΎΠ³;

ΠŸΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅: имССтся систСма Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

ВСстовый случай: Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ всС Π΄ΠΎΡ€ΠΎΠ³ΠΈ»;

ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Π² ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉΡΡ систСмС Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ всС Π΄ΠΎΡ€ΠΎΠ³ΠΈ. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“, рисунок 11)

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΏΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ для создания систСмы Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², Π° Ρ‚Π°ΠΊ ΠΆΠ΅ быстро ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ опрСдСляСт Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ Π΄ΠΎ Π²ΡΠ΅Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΉ систСмС Π΄ΠΎΡ€ΠΎΠ³. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ содСрТит понятный ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ интСрфСйс, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ прСдоставляСтся Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π² Π²ΠΈΠ΄Π΅ систСмы Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ….

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников

1. ΠšΡ€ΡƒΠ· Π . Π›. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ / Π . Π›. ΠšΡ€ΡƒΠ·; ΠΏΠ΅Ρ€. Ρ Π°Π½Π³Π». — Πœ.: Π‘Π˜ΠΠžΠœ. Лаборатория Π·Π½Π°Π½ΠΈΠΉ, 2008 — 765 с.: ΠΈΠ». — (ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρƒ).

2. ΠšΡƒΠ·Π½Π΅Ρ†ΠΎΠ² А. Π’., Π‘Π°ΠΊΠΎΠ²ΠΈΡ‡ Π’. А., Π₯ΠΎΠ»ΠΎΠ΄ Н. И. Π’Ρ‹ΡΡˆΠ°Ρ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°. ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. — ΠœΠΈΠ½ΡΠΊ: Π’Ρ‹ΡΡˆΠ°Ρ школа, 2010 Π³.- Π‘. 792.

3. ΠžΡ€Π΅ О. ВСория Π“Ρ€Π°Ρ„ΠΎΠ². — Πœ.: Наука, 2010 Π³.

4. Π‘Π΅Π»ΠΎΠ². ВСория Π“Ρ€Π°Ρ„ΠΎΠ². — Πœ.: Наука, 2011 Π³.

5. НСфСдов Π’. Н., Осипова Π’. А. ΠšΡƒΡ€Ρ дискрСтной ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΈ. — Πœ.: МАИ, 2010 Π³.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ А

Листинг ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π΄ΠΎΡ€ΠΎΠ³Π° Π³ΠΎΡ€ΠΎΠ΄ Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ интСрфСйс

unit Unit1; // ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ 1 «ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° достиТимости ΠΈΠ· Π³ΠΎΡ€ΠΎΠ΄Π°, А Π΄ΠΎ Π²ΡΠ΅Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄ΠΎΡ€ΠΎΠ³ Π² ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΉ систСмС Π΄ΠΎΡ€ΠΎΠ³»

interface

uses // стандартныС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids, ExtCtrls, ComCtrls, Menus, ExtDlgs, Spin, XPMan;

type

TForm1 = class (TForm) // Ρ‚ΠΈΠΏΡ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² графичСского интСрфСйса ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ модуля

Image1: TImage;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N5: TMenuItem;

OpenDialog1: TOpenDialog;

SaveDialog1: TSaveDialog;

N4: TMenuItem;

PopupMenu1: TPopupMenu;

N7: TMenuItem;

N8: TMenuItem;

N9: TMenuItem;

GroupBox1: TGroupBox;

PageControl1: TPageControl;

TabSheet3: TTabSheet;

Button10: TButton;

Button9: TButton;

Button5: TButton;

Button6: TButton;

GroupBox2: TGroupBox;

Button2: TButton;

Button1: TButton;

Button4: TButton;

XPManifest1: TXPManifest;

GroupBox3: TGroupBox;

Label2: TLabel;

Label3: TLabel;

vv: TSpinEdit;

Label4: TLabel;

isv: TSpinEdit;

Button11: TButton;

N6: TMenuItem;

Label5: TLabel;

TabSheet1: TTabSheet;

StringGrid1: TStringGrid;

Button3: TButton;

Button12: TButton;

Izver: TSpinEdit;

Label6: TLabel;

TabSheet2: TTabSheet;

Label1: TLabel;

StringGrid3: TStringGrid;

Edit1: TSpinEdit;

Button7: TButton;

Button8: TButton;

procedure FormCreate (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure Image1MouseMove (Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure Image1MouseUp (Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure redrow;

procedure Button1Click (Sender: TObject);

procedure Button9Click (Sender: TObject);

procedure Button5Click (Sender: TObject);

procedure Button4Click (Sender: TObject);

procedure Button10Click (Sender: TObject);

procedure N5Click (Sender: TObject);

procedure N2Click (Sender: TObject);

procedure N3Click (Sender: TObject);

procedure N4Click (Sender: TObject);

procedure StringGrid3KeyPress (Sender: TObject; var Key: Char);

procedure Edit1Change (Sender: TObject);

procedure Image1MouseDown (Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure N7Click (Sender: TObject);

procedure N8Click (Sender: TObject);

procedure N9Click (Sender: TObject);

procedure Button6Click (Sender: TObject);

procedure Button7Click (Sender: TObject);

procedure Button8Click (Sender: TObject);

procedure N10Click (Sender: TObject);

procedure Button11Click (Sender: TObject);

procedure StringGrid3KeyUp (Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure vvChange (Sender: TObject);

procedure isvChange (Sender: TObject);

procedure N6Click (Sender: TObject);

procedure StringGrid3Set (Sender: TObject; ACol,

ARow: Integer; const Value: String);

procedure Button3Click (Sender: TObject);

procedure Button12Click (Sender: TObject);

procedure IzverChange (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

vv = record

x, y: Integer;

num:Integer;

end;

var

Form1: TForm1;

pos, pos2: Integer;

n, xx, yy, xb, yb, ugol, doroga, vver, i, j, k: Integer;

ver, reb, reb2, del_ver, result: Boolean;

vers:array[1.100] of vv;

dost :array of array of integer;

implementation

uses Math, Unit2, Unit3, Unit4;

{$R *.dfm}

function findver (x, y, rad:integer):Integer; // Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ Π² Π³Ρ€Π°Ρ„Π΅ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΡƒΠΊΠ°Π·Π°Π»ΠΈ сСйчас.

var i: Integer;

begin

findver:=0;

for i:=1 to pos do begin

if (x>vers[i]. x-rad) and (xvers[i]. y-rad) and (y

findver:=i;

end;

end;

procedure Matrix; //Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π€Π»ΠΎΠΉΠ΄Π°.

begin

SetLength (dost, pos, pos);

for i:=1 to pos do

for j:=1 to pos do

if Form1. StringGrid3.Cells[j, i]<>'0' then

dost[i-1,j-1]: =1 else dost[i-1,j-1]: =0;

for i:=1 to pos do

for j:=1 to pos do

if dost[j-1,i-1]=0 then doroga:=doroga+1;

for k:=0 to pos-1 do // ΠΈΡ‰Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ К

for i:=0 to pos-1 do

for j:=0 to pos-1 do

dost[i, j]: = dost[i, j] or (dost[i, k] and dost[k, j]) ;

for i:=1 to pos do

for j:=1 to pos do

begin

if dost[j-1,i-1]=0 then vver:=vver+1;

Form1.StringGrid1.Cells[j, i]: =inttostr (dost[i-1,j-1]);

end;

end;

procedure TForm1. redrow; // пСрСрисовка изобраТСния Π³Ρ€Π°Ρ„Π° Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅

var i, j: Integer; // Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

begin

if pos =0 then exit;

n:=stringgrid3.ColCount-1;

Image1.Canvas.Pen.Mode := pmCopy;

Image1.Canvas.Brush.Color := clWhite;

Image1.Canvas.Rectangle (0,0,Image1.Width, Image1. Height); // очистка канваса Π±Π΅Π· мигания

Image1.Canvas.Pen.Width:=1;

for i:=1 to n do // рисуСм Π΄ΡƒΠ³ΠΈ

for j:=1 to n do

if strtoint (StringGrid3.Cells[i, j])>0 then

begin

Image1.Canvas.MoveTo (vers[i]. x, vers[i].y);

Image1.Canvas.lineTo (vers[j].x, vers[j].y);

/// красная Ρ‚ΠΎΡ‡ΠΊΠ° направлСния

Image1.Canvas.pen.Color := clRed;

Image1.Canvas.Brush.Color := clRed;

Image1.Canvas.ellipse (round (vers[j]. x+(vers[i].xvers[j]. x)*0.9)-4,round (vers[j].y+(vers[i].yvers[j]. y)*0.9)-4,

round (vers[j].x+(vers[i].xvers[j]. x)*0.9)+4,round (vers[j].y+(vers[i].yvers[j]. y)*0.9)+4);

Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.93)-3,round (vers[j].y+(vers[i].yvers[j]. y)*0.93)-3,

round (vers[j].x+(vers[i].xvers[j]. x)*0.93)+3,round (vers[j].y+(vers[i].yvers[j]. y)*0.93)+3);

Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.95)-2,round (vers[j].y+(vers[i].yvers[j]. y)*0.95)-2,

round (vers[j].x+(vers[i].xvers[j]. x)*0.95)+2,round (vers[j].y+(vers[i].yvers[j]. y)*0.95)+2);

Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.97)-1,round (vers[].y+(vers[i].yvers[j]. y)*0.97)-1,

round (vers[j].x+(vers[i].xvers[j]. x)*0.97)+1,round (vers[j].y+(vers[i].yvers[j]. y)*0.97)+1);

Image1.Canvas.Pen.Color := clBlack;

Image1.Canvas.Brush.Color := clWhite;

Image1.Canvas.pen.Style:= psSolid ;

end;

for i:=1 to n do

begin // Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ — ΠΊΡ€ΡƒΠΆΠΊΠΈ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹

Image1.Canvas.Brush.Color:=RGB (234,228,36);

Image1.Canvas.Ellipse (vers[i]. x-10,vers[i].y-10,vers[i].x+10,vers[i].y+10);

Image1.Canvas.TextOut (vers[i].x-3,vers[i].y-6,inttostr (i));

end;

end;

procedure TForm1. FormCreate (Sender: TObject);

begin

pos:=0;

n:=0;

result:=false;

end;

procedure TForm1. Button2Click (Sender: TObject);

begin

reb:=false;

xx:=-100;

yy:=-100;

Image1.Canvas.Pen.Mode := pmNotXor;

ver:= True;

end;

procedure TForm1. Image1MouseMove (Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

if ver then

begin

Image1.Canvas.Ellipse (xx-10,yy-10,xx+10,yy+10);

xx:=x;

yy:=y;

Image1.Canvas.Ellipse (x-10,y-10,x+10,y+10);

end;

if reb2 then

begin

Image1.Canvas.MoveTo (xb, yb);

Image1.Canvas.LineTo (xx, yy);

xx:=x;

yy:=y;

Image1.Canvas.MoveTo (xb, yb);

Image1.Canvas.LineTo (x, y);

end

else

begin

xb:=x;

yb:=y;

end;

end;

procedure TForm1. Image1MouseUp (Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

var j, k, i, i2, xx, yy: integer;

begin

If del_ver then

begin // ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹

//Π½Π°ΠΉΡ‚ΠΈ ΡƒΠ΄Π°Π»ΡΠ΅ΠΌΡƒΡŽ Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ

k:=findver (x, y,10); //ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС Ρ€Π΅Π±Ρ€Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ входят ΠΈ Π²Ρ‹Ρ…одят ΠΈΡ… ΡΡ‚ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹

ver:= false;

reb := false;

reb2:=false;

del_ver:=false;

if k=0 then exit;

for i:=1 to StringGrid3. ColCount-1 do

if i>=k then vers[i]: =vers[i+1];

// Π±ΡƒΠ΄Π΅ΠΌ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ Π½Π°Π·Π°Π΄ столбцы, Ссли ΠΎΠ½ΠΈ стоят ΠΏΡ€Π°Π²Π΅Π΅ удаляСмой Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹

for i:=1 to StringGrid3. RowCount-1 do

for j:=1 to StringGrid3. RowCount-1 do

if j>=k then StringGrid3. Cells[i, j]: =StringGrid3.cells[i, j+1];

for j:=1 to StringGrid3. RowCount-1 do

for i:=1 to StringGrid3. RowCount-1 do

if i>=k then StringGrid3. Cells[i, j]: =StringGrid3.cells[i+1,j];

pos:=pos-1;

edit1.Value:=edit1.Value-1;

StringGrid3.cells[0,0]:='*';

redrow;

Image1.Canvas.Pen.Mode := pmCopy;

Button2.Caption:= 'Π Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ '+IntToStr (pos+1);

end;

If ver then

begin

inc (pos);

vers[pos]. x:=x;

vers[pos].y:=y;

xx:=-100;yy:=-100;

vers[pos].num:=pos;

ver:=False;

Button2.Caption:= 'Π Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ '+IntToStr (pos+1);

If pos>1 then

begin

StringGrid3.ColCount:=StringGrid3.ColCount+1;

StringGrid3.RowCount:=StringGrid3.RowCount+1;

Edit1.Value :=pos;

end;

for i:=1 to edit1. value+1 do

begin // рисуСм Π½ΠΎΠ²Ρ‹Π΅ Π½ΠΎΠΌΠ΅Ρ€Π° Π²Π΅Ρ€ΡˆΠΈΠ½ послС ΠΈΠ·ΠΌ. количСства Π²Π΅Ρ€ΡˆΠΈΠ½

StringGrid3.Cells[i, 0]: = inttostr (i);

StringGrid3.Cells[0,i]: = inttostr (i);

end;

for i:=1 to edit1. value do

begin

for i2:=1 to edit1. value do

begin

if StringGrid3. Cells[i2,i]='' then

StringGrid3.cells[i2,i]: ='0';

end;

end;

redrow;// пСрСрисуСм Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ послС добавлСния Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹

end;

if reb2 then begin

try

reb:=false;

reb2:=false;

xx:=0;

yy:=0;

i:=findver (x, y,10);

If i <>0 then

begin // Ссли ΡƒΠΊΠ°Π·Π°Π»ΠΈ всС Π²Π΅Ρ€Π½ΠΎ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΡ€ΡƒΠΆΠΊΠ° Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ смСТности запись

StringGrid3.Cells[findver (x, y,10), findver (xb, yb, 10)]: ='1';

StringGrid3.Cells[findver (xb, yb, 10), findver (x, y,10)]:='1'

end;

StringGrid3.cells[0,0]:='*';

redrow;

except;

redrow;

end;

end;

if reb then

begin

try

xb:=x;

yb:=y;

xx:=x;

yy:=y;

reb2:=True;

Image1.Canvas.MoveTo (0,0);

Image1.Canvas.LineTo (x, y);

i:=findver (x, y,10);

If i <>0 then

begin

inc (n);

StringGrid3.Cells[pos2,0]: =inttostr (i);

i:=findver (x, y,10); // Π½Π°ΠΉΡ‚ΠΈ ΠΊ ΠΊΠ°ΠΊΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ ΠΌΡ‹ ΡΠ΅ΠΉΡ‡Π°Ρ добавляСм Ρ€Π΅Π±Ρ€ΠΎ

end;

except;

reb:=false; // нСудачная ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ€Π΅Π±Ρ€ΠΎ

end;

end;

end;

procedure TForm1. Button1Click (Sender: TObject);

begin

xx:=0;

yy:=0;

Image1.Canvas.Pen.Mode := pmNotXor;

reb:=true;

end;

procedure TForm1. Button9Click (Sender: TObject);

var ns, ms, x, y, i, j: Integer;

step:real;

begin

step:= 4*3.14/ edit1. value;

ns:=(edit1.value);

for i:=1 to edit1. value do

if ((vers[i]. x=0) or (vers[i]. y=0)) then

begin

while ((findver (x, y,20)>0) or (x<50) or ((y+50)>image1.Height) or (y<50) or ((x+50)>image1.Width)) do

begin

ns:=image1.Width-random (image1.Width*2);

ms:=image1.Height-random (image1.Height*2);

x:=ns+ 300+ trunc (cos (i*step+ms+ugol/100)*100);

y:=ms+ 150+ trunc (sin (i*step+ns+ugol/100)*100);

end;

vers[i]. x:=x; vers[i]. y:=y;

end;

redrow;

end;

procedure TForm1. Button5Click (Sender: TObject);

var x, y: Integer;

i:Integer;

step:real;

begin

step:=2*3.14/ edit1. value;

for i:=1 to edit1. value do

begin

vers[i]. x:= 300+ trunc (cos (i*step+ugol/100)*100);

vers[i]. y:= 150+ trunc (sin (i*step+ugol/100)*100);

end;

redrow;

end;

procedure TForm1. Button4Click (Sender: TObject);

begin

del_ver:=true;

end;

procedure TForm1. Button10Click (Sender: TObject);

var i, j: Integer;

begin

// очистка Π³Ρ€ΠΈΠ΄Π°

n:=edit1.Value;

pos:=edit1.Value;

for i:=1 to n do

for j:=1 to n do

StringGrid3.cells[j, i]: ='0';

Button9.Click;

end;

procedure TForm1. N5Click (Sender: TObject);

begin

Halt (0);

end;

procedure TForm1. N2Click (Sender: TObject);

begin

button7.Click; // Π²Ρ‹Π·ΠΎΠ² открытия ΠΈΠ· ΠΌΠ΅Π½ΡŽ

end;

procedure TForm1. N3Click (Sender: TObject);

begin

button8.click; // Π²Ρ‹Π·ΠΎΠ² сохранСния ΠΈΡ… ΠΌΠ΅Π½ΡŽ

end;

procedure TForm1. N4Click (Sender: TObject); // Π½ΠΎΠ²Ρ‹ΠΉ Π³Ρ€Π°Ρ„

var i, j: integer;

begin

Button10.click; // Π²Π½Π°Ρ‡Π°Π»Π΅ очистка Π³Ρ€ΠΈΠ΄Π°

edit1.Value:=1; // ΡƒΠ±ΠΈΡ€Π°Π΅ΠΌ лишниС строки ΠΈ ΡΡ‚ΠΎΠ»Π±Ρ†Ρ‹

label5.Caption:=' ';

Button9.click; // обновляСм ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ

Button2.Caption:= 'Π Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ '+IntToStr (pos+1);

for i:=0 to pos-1 do

for j:=0 to pos-1 do

begin

StringGrid1.Cells[i, j]: ='0';

StringGrid3.Cells[i, j]:='0';

end;

end;

procedure TForm1. StringGrid3KeyPress (Sender: TObject; var Key: Char);

begin

if (Sender as TStringGrid).col=(Sender as TStringGrid).row // нСльзя ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π° Π³Π»Π°Π²Π½ΠΎΠ΅ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ

then key := Chr (0);

case Key of

#8,'1','0':; // Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΈ ΠΊΠ»Π°Π²ΠΈΡˆΠ°

else key := Chr (0); // ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ символы Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹

end;

end;

procedure TForm1. Edit1Change (Sender: TObject);

var i, j: integer;

begin

try

StringGrid3.ColCount:=edit1.Value+1;// ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ спинбокса Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ

StringGrid3.RowCount:=edit1.Value+1;

StringGrid1.ColCount:=edit1.Value+1;// ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ спинбокса Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ

StringGrid1.RowCount:=edit1.Value+1;

n:=edit1.Value;

pos:=edit1.Value;

// надписи ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π°Ρ…

for i:=1 to n+1 do

begin

StringGrid3.Cells[i, 0]: = inttostr (i);

StringGrid3.Cells[0,i]: = inttostr (i);

end;

for i:=1 to n+1 do

begin

StringGrid1.Cells[i, 0]: = inttostr (i);

StringGrid1.Cells[0,i]: = inttostr (i);

end;

for i:=1 to n do

for j:=1 to n do

begin

if StringGrid3. Cells[j, i]='' then

StringGrid3.cells[j, i]: ='0';

end;

for i:=1 to n do

for j:=1 to n do

begin

if StringGrid1. Cells[j, i]='' then

StringGrid1.cells[j, i]: ='0';

end;

button9.Click; // ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ

Button2.Caption:= 'Π Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ '+IntToStr (pos+1);

except;

end;

end;

procedure TForm1. Image1MouseDown (Sender: TObject; Button: TMouseButton; // ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ Π½Π° ΠΈΠΌΠ°ΠΆΠ΅

Shift: TShiftState; X, Y: Integer);

begin

if button <>mbLeft then // Ссли Π½Π°ΠΆΠ°Π»ΠΈ Π»Π΅Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ

PopupMenu1.Popup (Mouse.CursorPos.X, Mouse.CursorPos.y); // ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ контСкстноС мСню

end;

procedure TForm1. N7Click (Sender: TObject);

begin

Button2.Click ;

end;

procedure TForm1. N8Click (Sender: TObject);

begin

Button1.Click ;

end;

procedure TForm1. N9Click (Sender: TObject);

begin

Button4.Click;

end;

procedure TForm1. Button6Click (Sender: TObject);

var i: integer;

begin

for i:=1 to edit1. value do

begin

vers[i]. x:=0; vers[i]. y:=0;

end;

Button9.Click ;

end;

procedure TForm1. Button7Click (Sender: TObject);

var

f: TextFile;

iTmp, i, k: Integer;

strTemp: String;

begin

if (not OpenDialog1. Execute ()) then exit;

AssignFile (f, OpenDialog1. FileName);

Reset (f);

with StringGrid3 do

begin

Readln (f, iTmp);

ColCount := iTmp;

Readln (f, iTmp);

RowCount := iTmp;

edit1.Value:=ColCount-1;

for i := 0 to ColCount — 1 do

for k := 0 to RowCount — 1 do

begin

Readln (f, strTemp);

Cells[i, k] := strTemp;

end;

Label5.Caption:='';

end;

CloseFile (f);

if StringGrid3. ColCount>10 then button6. Click else button5. Click;// ΠΎΠ±Π½ΠΎΠ²ΠΈΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅

Button2.Caption:= 'Π Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ '+IntToStr (pos+1);

end;

procedure TForm1. Button8Click (Sender: TObject);

var

f: TextFile;

i, k: Integer;

begin

if (not SaveDialog1. Execute ()) then exit; // провСряСм открылся Π»ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ

AssignFile (f, SaveDialog1. FileName);

Rewrite (f);

with StringGrid3 do

begin

Writeln (f, ColCount);

Writeln (f, RowCount);

for i := 0 to ColCount — 1 do

for k := 0 to RowCount — 1 do

Writeln (F, Cells[i, k]);

end;

CloseFile (F);

end;

procedure TForm1. N10Click (Sender: TObject);

begin

button11.Click; // Π²Ρ‹Π·ΠΎΠ² Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π³Π°ΠΌΠΈΠ»ΡŒΡ‚ΠΎΠ½ΠΎΠ²Π° Ρ†ΠΈΠΊΠ»Π°

end;

procedure TForm1. Button11Click (Sender: TObject);

var i, j, k: integer;

dost :array of array of integer;

begin

if pos<2 then exit;

SetLength (dost, pos, pos);

for i:=1 to pos do

for j:=1 to pos do

if StringGrid3. Cells[j, i]<>'0' then

dost[i-1,j-1]: =1 else dost[i-1,j-1]: =0;

for k:=0 to pos-1 do // ΠΈΡ‰Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ К

for i:=0 to pos-1 do

for j:=0 to pos-1 do

dost[i, j]: = dost[i, j] or (dost[i, k] and dost[k, j]) ;

if dost[ isv. Value-1, vv. Value-1]=0 then

label5.Caption:='Π“ΠΎΡ€ΠΎΠ΄ ΠΠ• достиТим'

else

begin

label5.Caption:='Π“ΠΎΡ€ΠΎΠ΄ достиТим';

for i:=1 to pos do

for j:=1 to pos do

StringGrid1.Cells[j, i]: =inttostr (dost[i-1,j-1]);

end;

end;

procedure TForm1. StringGrid3KeyUp (Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

redrow;

end;

procedure TForm1. vvChange (Sender: TObject);

begin

if vv. Value>pos then vv. Value:=pos;

end;

procedure TForm1. isvChange (Sender: TObject);

begin

if isv. Value>pos then isv. Value:=pos;

end;

procedure TForm1. IzverChange (Sender: TObject);

begin

if izver. Value>pos then izver. Value:=pos;

end;

procedure TForm1. N6Click (Sender: TObject);

begin

form2.show;

end;

procedure redrow_result_true;

var i, j: integer;

begin

if pos =0 then exit;

n:=form1.stringgrid3.ColCount-1;

form1.Image1.Canvas.Pen.Mode := pmCopy;

form1.Image1.Canvas.Brush.Color := clWhite;

form1.Image1.Canvas.Rectangle (0,0,form1.Image1.Width, form1. Image1.Height); // очистка канваса Π±Π΅Π· мигания

form1.Image1.Canvas.Pen.Width:=3;

form1.Image1.Canvas.Pen.Color := clGreen;

for i:=1 to n do // рисуСм Ρ€Π΅Π±Ρ€Π°

for j:=1 to n do

if strtoint (form1.StringGrid3.Cells[i, j])>0 then

begin

form1.Image1.Canvas.MoveTo (vers[i]. x, vers[i].y);

form1.Image1.Canvas.lineTo (vers[j].x, vers[j].y);

/// красная Ρ‚ΠΎΡ‡ΠΊΠ° направлСния

form1.Image1.Canvas.pen.Color := clRed;

form1.Image1.Canvas.Brush.Color := clRed;

form1.Image1.Canvas.ellipse (round (vers[j]. x+(vers[i].xvers[j]. x)*0.9)-4,round (vers[j].y+(vers[i].yvers[j]. y)*0.9)-4,

round (vers[j].x+(vers[i].x-vers[j].x)*0.9)+4,round (vers[j].y+(vers[i].yvers[j]. y)*0.9)+4);

form1.Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.93)-3,round (vers[j].y+(vers[i].yvers[j]. y)*0.93)-3,

round (vers[j].x+(vers[i].xvers[j]. x)*0.93)+3,round (vers[j].y+(vers[i].yvers[j]. y)*0.93)+3);

form1.Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.95)-2,round (vers[j].y+(vers[i].yvers[j]. y)*0.95)-2,

round (vers[j].x+(vers[i].xvers[j]. x)*0.95)+2,round (vers[j].y+(vers[i].yvers[j]. y)*0.95)+2);

form1.Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.97)-1,round (vers[j].y+(vers[i].yvers[j]. y)*0.97)-1,

round (vers[j].x+(vers[i].xvers[j]. x)*0.97)+1,round (vers[j].y+(vers[i].yvers[j]. y)*0.97)+1);

form1.Image1.Canvas.Pen.Width:=3;

form1.Image1.Canvas.Pen.Color := clGreen;

form1.Image1.Canvas.Brush.Color := clWhite;

form1.Image1.Canvas.pen.Style:= psSolid ;

end;

form1.Image1.Canvas.Pen.Width:=1;

form1.Image1.Canvas.Pen.Color := clBlack;

for i:=1 to n do

begin // Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ — ΠΊΡ€ΡƒΠΆΠΊΠΈ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹

Form1.Image1.Canvas.Brush.Color:=RGB (234,228,36);

Form1.Image1.Canvas.Ellipse (vers[i]. x-10,vers[i].y-10,vers[i].x+10,vers[i].y+10);

Form1.Image1.Canvas.TextOut (vers[i].x-3,vers[i].y-6,inttostr (i));

end;

end;

procedure redrow_result_false;

var i, j: integer;

begin

if pos =0 then exit;

n:=form1.stringgrid3.ColCount-1;

form1.Image1.Canvas.Pen.Mode := pmCopy;

form1.Image1.Canvas.Brush.Color := clWhite;

form1.Image1.Canvas.Rectangle (0,0,form1.Image1.Width, form1. Image1.Height); // очистка канваса Π±Π΅Π· мигания

form1.Image1.Canvas.Pen.Width:=3;

form1.Image1.Canvas.Pen.Color := clYellow;

for i:=1 to n do // рисуСм Ρ€Π΅Π±Ρ€Π°

for j:=1 to n do

if strtoint (form1.StringGrid3.Cells[i, j])>0 then

begin

form1.Image1.Canvas.MoveTo (vers[i]. x, vers[i].y);

form1.Image1.Canvas.lineTo (vers[j].x, vers[j].y);

/// красная Ρ‚ΠΎΡ‡ΠΊΠ° направлСния

form1.Image1.Canvas.pen.Color := clRed;

form1.Image1.Canvas.Brush.Color := clRed;

form1.Image1.Canvas.ellipse (round (vers[j]. x+(vers[i].xvers[j]. x)*0.9)-4,round (vers[j].y+(vers[i].yvers[j]. y)*0.9)-4,

round (vers[j].x+(vers[i].x-vers[j].x)*0.9)+4,round (vers[j].y+(vers[i].yvers[j]. y)*0.9)+4);

form1.Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.93)-3,round (vers[j].y+(vers[i].yvers[j]. y)*0.93)-3,

round (vers[j].x+(vers[i].xvers[j]. x)*0.93)+3,round (vers[j].y+(vers[i].yvers[j]. y)*0.93)+3);

form1.Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.95)-2,round (vers[j].y+(vers[i].yvers[j]. y)*0.95)-2,

round (vers[j].x+(vers[i].xvers[j]. x)*0.95)+2,round (vers[j].y+(vers[i].yvers[j]. y)*0.95)+2);

form1.Image1.Canvas.ellipse (round (vers[j].x+(vers[i].xvers[j]. x)*0.97)-1,round (vers[j].y+(vers[i].yvers[j]. y)*0.97)-1,

round (vers[j].x+(vers[i].xvers[j]. x)*0.97)+1,round (vers[j].y+(vers[i].yvers[j]. y)*0.97)+1);

form1.Image1.Canvas.Pen.Width:=3;

form1.Image1.Canvas.Pen.Color := clYellow;

form1.Image1.Canvas.Brush.Color := clWhite;

form1.Image1.Canvas.pen.Style:= psSolid ;

end;

form1.Image1.Canvas.Pen.Width:=1;

form1.Image1.Canvas.Pen.Color := clBlack;

for i:=1 to n do

begin // Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ — ΠΊΡ€ΡƒΠΆΠΊΠΈ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹

Form1.Image1.Canvas.Brush.Color:=RGB (234,228,36);

Form1.Image1.Canvas.Ellipse (vers[i]. x-10,vers[i].y-10,vers[i].x+10,vers[i].y+10);

Form1.Image1.Canvas.TextOut (vers[i].x-3,vers[i].y-6,inttostr (i));

end;

end;

procedure TForm1. StringGrid3Set (Sender: TObject; ACol,

ARow: Integer; const Value: String);

begin

TStringGrid (Sender).Cells[ARow, ACol] := Value;

end;

procedure TForm1. Button3Click (Sender: TObject);

begin

Form3.Show;

redrow;

Button9.Click;

end;

procedure Dostizhimost (izver:integer);

begin

izver:=izver;

doroga:=0;

vver:=0;

if pos<2 then exit;

Matrix;

for i:=1 to pos do

if dost[izver-1,i-1]<>0 then

begin

result:=true;

Form1.Label5.Caption:='ВсС Π³ΠΎΡ€ΠΎΠ΄Π° достиТимы';

end;

doroga:=Round ((doroga-pos)/(5*pos));

vver:=Round (vver/pos);

if (doroga<=3) and ((vver<5) or (vver=6) or (vver=10)) then

begin

for i:=1 to pos do

begin

for j:=1 to pos+1 do

if dost[izver-1,j-1]=0 then

begin

Form1.StringGrid3.Cells[izver, j]: ='1';

Form1.StringGrid3.Cells[j, izver]:='1';

Form1.Label5.Caption:='ВсС Π³ΠΎΡ€ΠΎΠ΄Π° достиТимы';

result:=true;

Matrix;

end;

for j:=1 to pos do

if dost[izver-1,j-1]=0 then

begin

Form1.StringGrid3.Cells[izver, j]: ='1';

Form1.StringGrid3.Cells[j, izver]:='1';

Form1.Label5.Caption:='ВсС Π³ΠΎΡ€ΠΎΠ΄Π° достиТимы';

Matrix;

end;

end;

end

else begin

result:=false;

Form1.Label5.Caption:='НС всС Π³ΠΎΡ€ΠΎΠ΄Π° достиТимы';

end;

end;

procedure TForm1. Button12Click (Sender: TObject);

var i, j: integer;

begin

Dostizhimost (Form1.izver.Value);

if result then redrow_result_true else redrow_result_false;

end;

end.

unit Unit2; // ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ 2 «Πž ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅»

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm2 = class (TForm)

Label1: TLabel;

procedure Label1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2. Label1Click (Sender: TObject);

begin

Close;

end;

end.

unit Unit3; // ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ 3 «Π—Π°Π΄Π°Π½ΠΈΠ΅»

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, unit1;

type

TForm3 = class (TForm)

Button1: TButton;

Label1: TLabel;

procedure Button1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3. Button1Click (Sender: TObject);

begin

Close;

end;

end.

unit Unit4; // ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ 4 «Π—аставочная Ρ„ΠΎΡ€ΠΌΠ°»

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls, StdCtrls;

type

TForm4 = class (TForm)

Timer1: TTimer;

Button1: TButton;

Label1: TLabel;

Image1: TImage;

procedure Button1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

implementation

{$R *.dfm}

procedure TForm4. Button1Click (Sender: TObject);

begin

Form4.Timer1.Enabled:=false;

close;

end;

end.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π‘

Π‘Π»ΠΎΠΊ-схСмы основных ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

1. Π”ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ Π΄ΠΎ Π²ΡΠ΅Ρ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² (ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° procedure Dostizhimost (izver:integer))

— 6 ;

— 4;

— 6 ;

— 4;

— 6 ;

— 4;

2. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ достиТимости ΠΏΠΎ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ смСТности (ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Matrix)

— 6 ;

— 4;

— 6 ;

— 4;

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π’

ОписаниС внСшнСго Π²ΠΈΠ΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса

На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ прСдставлСна главная Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹:

— Image1;

— Buttons;

— SpinEdit;

— StringGrid;

— GroupBox;

— PageControl;

— MainMenu;

— PopupMenu

— Label;

На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 1 ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ 4 области:

1. Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ состоит ΠΈΠ· 4-Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ: «Π Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄», «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄ΠΎΡ€ΠΎΠ³Ρƒ», «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄», «Π—Π°Π΄Π°Π½ΠΈΠ΅»; ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… привязана своя ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°.

2. РСшСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ состоит ΠΈΠ· 3-Ρ… счСтчиков: Π°) — ΠΏΡƒΠ½ΠΊΡ‚ А, Π±) ΠΏΡƒΠ½ΠΊΡ‚ Π’, Π²) — ΠΏΡƒΠ½ΠΊΡ‚ Π’; 2-Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ: «ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΄ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ», «Π”ΠΎΡΡ‚ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ Π΄ΠΎ Π²ΡΠ΅Ρ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ²»; ΠΈ ΠΏΠΎΠ»Ρ для рисования систСмы Π΄ΠΎΡ€ΠΎΠ³ ΠΈ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

3. МСню ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ содСрТит Π² ΡΠ΅Π±Π΅ 2 подмСню :

Β· Π€Π°ΠΉΠ»:

Β· О ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅:

4. Π“Ρ€Π°Ρ„, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π² ΡΠ΅Π±Π΅:

Β· ΠœΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ смСТности:

Β· ΠœΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ достиТимости:

Β· Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΎΠΌ:

Β· 2 ΠΊΠ½ΠΎΠΏΠΊΠΈ: «Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°», «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π³Ρ€Π°Ρ„ Π² Ρ„Π°ΠΉΠ»»;

Β· Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ².

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“

ВСстовый случай 1

Рисунок 1

ВСстовый случай 2:

Рисунок 2

ВСстовый случай 3

Рисунок 3

ВСстовый случай 4

Рисунок 4

ВСстовый случай 5

Рисунок 5

ВСстовый случай 6

Рисунок 6

ВСстовый случай 7

Рисунок 7 (Π°) Рисунок 7 (Π±)

ВСстовый случай 8

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ