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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ с Π»ΡŽΠ±Ρ‹ΠΌ количСством Π²Π΅Ρ€ΡˆΠΈΠ½ ΠΈ Ρ€Π΅Π±Π΅Ρ€

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

A, b, c, d},{u, v, w, x}; {(u, a),(u, b),(v, b),(v, c),(w, c),(w, a),(x, c), (x, d)}>. Π“Ρ€Π°Ρ„ Π½Π°ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΠΊΠ°ΠΊ модСль, носитСлСм ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся мноТСство Π²Π΅Ρ€ΡˆΠΈΠ½, Π° ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ — Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ смСТности Π²Π΅Ρ€ΡˆΠΈΠ½. Π’ΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ <{a, b, c, d}; {(a, b), (b, a),(b, c),(c, b),(a, c),(c, a),(c, d),(d, c)}>. Π’ Ρ‚Π°ΠΊΠΎΠΌ прСдставлСнии Ρ€Π΅Π±Ρ€Ρƒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Π²Π΅ ΠΏΠ°Ρ€Ρ‹ Π²Π΅Ρ€ΡˆΠΈΠ½ (v1,v2) ΠΈ (v2,v1… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ с Π»ΡŽΠ±Ρ‹ΠΌ количСством Π²Π΅Ρ€ΡˆΠΈΠ½ ΠΈ Ρ€Π΅Π±Π΅Ρ€ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Π’ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ врСмя тСория Π³Ρ€Π°Ρ„ΠΎΠ² стала простым, доступным ΠΈ ΠΌΠΎΡ‰Π½Ρ‹ΠΌ срСдством Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ вопросов, относящихся ΠΊ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌΡƒ ΠΊΡ€ΡƒΠ³Ρƒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ проСктирования ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Π»ΡŒΠ½Ρ‹Ρ… схСм ΠΈ ΡΡ…Π΅ΠΌ управлСния, исслСдования Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΎΠ², логичСских Ρ†Π΅ΠΏΠ΅ΠΉ, Π±Π»ΠΎΠΊ-схСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, экономики ΠΈ ΡΡ‚атистики, Ρ…ΠΈΠΌΠΈΠΈ ΠΈ Π±ΠΈΠΎΠ»ΠΎΠ³ΠΈΠΈ, Ρ‚Π΅ΠΎΡ€ΠΈΠΈ расписаний ΠΈ Π΄ΠΈΡΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠŸΠΎΠ»Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ — простой Π³Ρ€Π°Ρ„, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ каТдая ΠΏΠ°Ρ€Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²Π΅Ρ€ΡˆΠΈΠ½ смСТна. ΠŸΠΎΠ»Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ с Π²Π΅Ρ€ΡˆΠΈΠ½Π°ΠΌΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Ρ‘Π±Π΅Ρ€ ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ся .

Π’ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Π³Ρ€Π°Ρ„ΠΎΠ² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΌ ΠΊ Π³Ρ€Π°Ρ„Ρƒ G Π½Π°Π·Ρ‹Π²Π°Π΅Ρ‚ся Ρ‚Π°ΠΊΠΎΠΉ Π³Ρ€Π°Ρ„ H, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Ρ‚ΠΎ ΠΆΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ Π²Π΅Ρ€ΡˆΠΈΠ½, Ρ‡Ρ‚ΠΎ ΠΈ G, Π½ΠΎ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π΄Π²Π΅ Π½Π΅ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ смСТны Ρ‚ΠΎΠ³Π΄Π° ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π½Π΅ ΡΠΌΠ΅ΠΆΠ½Ρ‹ Π² G. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ Π΄ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС Ρ€Π΅Π±Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΈ Π΄ΠΎ ΡΡ‚ΠΎΠ³ΠΎ.

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

Для хранСния исходных Π΄Π°Π½Π½Ρ‹Ρ… Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Access, структура ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСна Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «ΠΈΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅».

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ интСрфСйс ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ для взаимодСйствия с ΠΈΡΡ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ для построСния ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ язык программирования АВБ-Паскаль.

1. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° прилоТСния

Π³Ρ€Π°Ρ„ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ Ρ€Π΅Π±Ρ€ΠΎ

1.1 ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ

Π‘ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ способ задания Π³Ρ€Π°Ρ„Π°: пСрСчислСниСм мноТСства Π²Π΅Ρ€ΡˆΠΈΠ½, ΠΈ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ΠΌ мноТСства Ρ€Π΅Π±Π΅Ρ€ — ΠΏΠ°Ρ€ Π²Π΅Ρ€ΡˆΠΈΠ½, соСдинСнных Ρ€Π΅Π±Ρ€ΠΎΠΌ.

<{a, b, c, d},{u, v, w, x}; {(u, a),(u, b),(v, b),(v, c),(w, c),(w, a),(x, c), (x, d)}>. Π“Ρ€Π°Ρ„ Π½Π°ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΠΊΠ°ΠΊ модСль, носитСлСм ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся мноТСство Π²Π΅Ρ€ΡˆΠΈΠ½, Π° ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ — Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ смСТности Π²Π΅Ρ€ΡˆΠΈΠ½. Π’ΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ <{a, b, c, d}; {(a, b), (b, a),(b, c),(c, b),(a, c),(c, a),(c, d),(d, c)}>. Π’ Ρ‚Π°ΠΊΠΎΠΌ прСдставлСнии Ρ€Π΅Π±Ρ€Ρƒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Π²Π΅ ΠΏΠ°Ρ€Ρ‹ Π²Π΅Ρ€ΡˆΠΈΠ½ (v1,v2) ΠΈ (v2,v1), ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½ΠΎΠΌΡƒ Ρ€Π΅Π±Ρ€Ρƒ. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ΅ прСдставлСниС, достаточно для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ€Π΅Π±Ρ€Π° ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ двухэлСмСнтноС мноТСство Π²Π΅Ρ€ΡˆΠΈΠ½ — Π΅Π³ΠΎ ΠΌΡ‹ ΠΈ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΡ‚ΠΎΠΆΠ΄Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ с Ρ€Π΅Π±Ρ€ΠΎΠΌ. Для Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° Ρ€Ρ‘Π±Ρ€Π° Π·Π°Π΄Π°ΡŽΡ‚ΡΡ мноТСством {{a, b},{b, c},{a, c},{c, d}} ΠΈ Π³Ρ€Π°Ρ„ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Ρƒ (V, E), Π³Π΄Π΅ V — мноТСство Π²Π΅Ρ€ΡˆΠΈΠ½, Π° E — мноТСство Ρ€Ρ‘Π±Π΅Ρ€.

ΠŸΡ€ΠΈ составлСнии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ:

Π¨ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ записи исходных Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ: для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° задаСтся мноТСство Π²Π΅Ρ€ΡˆΠΈΠ½ ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ Ρ€Π΅Π±Π΅Ρ€.

Π¨ Π°Π½Π°Π»ΠΈΡ‚ичСский ΠΌΠΎΠ΄ΡƒΠ»ΡŒ: ΠΌΠΎΠ΄ΡƒΠ»ΡŒ построСния ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°.

Π¨ Π³Ρ€Π°Ρ„ичСский ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒΡΡ графичСскиС изобраТСния Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°, ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°.

Основной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая:

1. Π—Π°Π΄Π°Π΅Ρ‚ исходный Π³Ρ€Π°Ρ„;

2. РассчитываСт ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π³Ρ€Π°Ρ„;

3. Π‘Ρ‚Ρ€ΠΎΠΈΡ‚ изобраТСния Ρ‚Ρ€Π΅Ρ… Π³Ρ€Π°Ρ„ΠΎΠ².

1.2 ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

Π’Ρ…ΠΎΠ΄Π½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ являСтся количСство Π²Π΅Ρ€ΡˆΠΈΠ½ Π³Ρ€Π°Ρ„Π° N, Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Ρ€Π΅Π±Π΅Ρ€ Π³Ρ€Π°Ρ„Π° Gr[1.2,1.100].

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ построСнныС изобраТСния Π³Ρ€Π°Ρ„Π°, ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°.

ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ построСнныС массивы FullGr[1.2,1.100], AddGr[1.2,1.100]

1.3 Π’Ρ‹Π±ΠΎΡ€ состава тСхничСских ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств

Pascal ABC 3.0.1 — БистСма ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для обучСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Паскаль ΠΈ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° Π½Π° ΡˆΠΊΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² ΠΈ ΡΡ‚ΡƒΠ΄Π΅Π½Ρ‚ΠΎΠ² ΠΌΠ»Π°Π΄ΡˆΠΈΡ… курсов.

Π­Ρ‚Π° систСма ΠΏΡ€ΠΈΠ·Π²Π°Π½Π° ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΎΡ‚ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΊ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠΌΡƒ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ, событийному ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. МногиС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Π² Pascal ABC ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π° Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΡ… этапах обучСния. ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ обходится Π±Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², хотя Π΅Π³ΠΎ возмоТности практичСски ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с Π³Ρ€Π°Ρ„ичСскими возмоТностями Borland Delphi.

Благодаря простотС ΠΈ Π³Ρ€Π°Ρ„ичСским возмоТностям этого ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π΄Π°Π½Π½Ρ‹ΠΉ язык Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ событийныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ, ΠΏΠΎΠ»ΡŒΠ·ΡƒΡΡΡŒ лишь ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΌΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ. Π’ ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΈ Π·Π²ΡƒΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π±Π΅Π· использования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π’ ΠΌΠΎΠ΄ΡƒΠ»ΡΡ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΠΊΡ†ΠΈΡŽ интСрфСйса ΠΈ ΡΠ΅ΠΊΡ†ΠΈΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ; Π² ΡΡ‚ΠΎΠΌ случаС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ устроСны практичСски Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ Π½Π° Ρ€Π°Π½Π½ΠΈΡ… этапах обучСния. Π’Π΅Π»Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ нСпосрСдствСнно Π²Π½ΡƒΡ‚Ρ€ΠΈ классов, Ρ‡Ρ‚ΠΎ позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ классы практичСски сразу послС изучСния записСй, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π½Ρ‹Ρ… классов (динамичСскиС массивы, стСки, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ, мноТСства), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ Pascal ABC Π½Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ исполняСмый ΠΊΠΎΠ΄ Π² Π²ΠΈΠ΄Π΅. exe-Ρ„Π°ΠΉΠ»Π°, Π° ΡΠΎΠ·Π΄Π°Π΅Ρ‚ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ компиляции Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Ρ‚Π΅ΠΌ выполняСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнного ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°.

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ΡΡ нСзависимыС Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ:

1. Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ…;

2. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°;

3. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°;

4. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ графичСского изобраТСния Π³Ρ€Π°Ρ„ΠΎΠ².

Алгоритм Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ прСдставлСн Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 1.

Рисунок 1 — МодСль Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

2. ОписаниС прилоТСния

Π’Ρ…ΠΎΠ΄Π½ΠΎΠ΅ Π΄Π°Π½Π½ΠΎΠ΅ N — количСство Π²Π΅Ρ€ΡˆΠΈΠ½.

Массив gr: array[1.100,1.100] of integer — Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Ρ€Π΅Π±Π΅Ρ€ Π³Ρ€Π°Ρ„Π°. КаТдая строка массива Π·Π°Π΄Π°Π΅Ρ‚ Ρ€Π΅Π±Ρ€ΠΎ Π³Ρ€Π°Ρ„Π°, Π³Π΄Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт — пСрвая Π²Π΅Ρ€ΡˆΠΈΠ½Π° Π³Ρ€Π°Ρ„Π°, Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт — вторая Π²Π΅Ρ€ΡˆΠΈΠ½Π° Π³Ρ€Π°Ρ„Π°.

Массив FullGr: array[1.100,1.100] of integer — Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Ρ€Π΅Π±Π΅Ρ€ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°. КаТдая строка массива Π·Π°Π΄Π°Π΅Ρ‚ Ρ€Π΅Π±Ρ€ΠΎ Π³Ρ€Π°Ρ„Π°, Π³Π΄Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт — пСрвая Π²Π΅Ρ€ΡˆΠΈΠ½Π° Π³Ρ€Π°Ρ„Π°, Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт — вторая Π²Π΅Ρ€ΡˆΠΈΠ½Π° Π³Ρ€Π°Ρ„Π°.

Массив AddGr: array[1.100,1.100] of integer — Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Ρ€Π΅Π±Π΅Ρ€ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°. КаТдая строка массива Π·Π°Π΄Π°Π΅Ρ‚ Ρ€Π΅Π±Ρ€ΠΎ Π³Ρ€Π°Ρ„Π°, Π³Π΄Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт — пСрвая Π²Π΅Ρ€ΡˆΠΈΠ½Π° Π³Ρ€Π°Ρ„Π°, Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт — вторая Π²Π΅Ρ€ΡˆΠΈΠ½Π° Π³Ρ€Π°Ρ„Π°.

Массив KoordV: array[1.100,1.100] of integer; — ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ построСнии Π³Ρ€Π°Ρ„Π° ΠΈ Π·Π°Π΄Π°Π΅Ρ‚ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Π³Ρ€Π°Ρ„Π° Π½Π° Π³Ρ€Π°Ρ„ичСском ΠΏΠΎΠ»ΠΎΡ‚Π½Π΅ (асбцисса — ΠΏΠ΅Ρ€Π²ΠΎΠ΅ число Π² ΡΡ‚Ρ€ΠΎΠΊΠ΅, ΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° — Π²Ρ‚ΠΎΡ€ΠΎΠ΅ число Π² ΡΡ‚Ρ€ΠΎΠΊΠ΅).

ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ основныС ΠΏΡ€ΠΈΠ΅ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ массивов для программирования Π·Π°Π΄Π°Ρ‡ΠΈ — Π²Π²ΠΎΠ΄ массива, Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ массива, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° элСмСнтов массива Π½Π° ΠΊΠ°ΠΊΠΎΠ΅—Π»ΠΈΠ±ΠΎ условиС.

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„Π° строим с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ графичСских ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ².

ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²Π΅Ρ€ΡˆΠΈΠ½ Π³Ρ€Π°Ρ„Π° Π±ΡƒΠ΄Π΅ΠΌ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π½Π° Π²ΠΎΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΉ окруТности с Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠΌ Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ графичСского экрана ΠΈ Ρ€Π°Π΄ΠΈΡƒΡΠΎΠΌ 150 пиксСл. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π° Π²Π΅Ρ€ΡˆΠΈΠ½ Π³Ρ€Π°Ρ„Π°, рассчитываСтся ΡƒΠ³ΠΎΠ», Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ отстоят Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°.

2.1 Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти количСство Π²Π΅Ρ€ΡˆΠΈΠ½ Π³Ρ€Π°Ρ„Π° ΠΈ Π΄Π°Π»Π΅Π΅ Ρ€Π΅Π±Ρ€Π° Π³Ρ€Π°Ρ„Π°. ПослС Π²Π²ΠΎΠ΄Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π²Π²ΠΎΠ΄ΠΎΠΌ 0 — Ссли Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ Π²Π²ΠΎΠ΄ Ρ€Π΅Π±Π΅Ρ€ Π³Ρ€Π°Ρ„Π° ΠΈ Ρ‡ΠΈΡΠ»ΠΎΠΌ, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΡ‚ Π½ΡƒΠ»Ρ, Ссли Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Ρ€Π΅Π±Ρ€Π° Π³Ρ€Π°Ρ„Π° Π² ΠΈΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„.

Рисунок 2 — Π—Π°Π΄Π°Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„Π° ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π΄Π°Π΅Ρ‚ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„:

РассчитываСт ΠΏΠΎΠ»Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„:

Рисунок 3 — РасчСт ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° ПослС этого ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ изобраТСния Π³Ρ€Π°Ρ„ΠΎΠ².

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Рисунок 4 — Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ Рисунок 5 — Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° Рисунок 7 — Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° Рисунок 8 — Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ Рисунок 9 — ΠŸΠΎΠ»Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ Рисунок 10 — Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π³Ρ€Π°Ρ„

2.2 Π’Ρ‹Π·ΠΎΠ² ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°

Π’Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ производится ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ΠΌ срСды программирования АВБ-Паскаль ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° (с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ pas). запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ проводится клавишСй F9.

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

Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ выполнСния курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π» ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ комплСкс Ρ€Π°Π±ΠΎΡ‚:

1. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° формализация Π·Π°Π΄Π°Ρ‡ΠΈ;

2. Π‘ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ основныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ структуру для задания Π³Ρ€Π°Ρ„ΠΎΠ² Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ Π­Π’Πœ;

3. Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ основныС Π·Π°Π΄Π°Ρ‡ΠΈ построСния ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π²ΠΎΠ΄ ΠΈΡ… Π½Π° ΡΠΊΡ€Π°Π½.

4. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Ρ‹ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ для контроля ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ вычислСний. Π’ ΡΠΎΠΎΡ‚вСтствии с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±Ρ‹Π»Π° ΠΎΡ‚Π»Π°ΠΆΠ΅Π½Π°.

5. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π° ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ записка.

Π¦Π΅Π»ΠΈ, поставлСнныС Π² Π½Π°Ρ‡Π°Π»Π΅ выполнСния курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹.

Библиография

1. ЙСнсСн К., Π’ΠΈΡ€Ρ‚ Н. Паскаль. Руководство для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ языка — М.: Ѐинансы ΠΈ ΡΡ‚атистика, 1982. — Π‘. 151.

2. Π’ΠΈΡ€Ρ‚ Н. Алгоритмы + структуры Π΄Π°Π½Π½Ρ‹Ρ… = ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ — М.: ΠœΠΈΡ€, 1985. — Π‘. 406.

3. Π“Ρ€ΠΎΠ³ΠΎΠ½ΠΎ П. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Паскаль — М.: ΠœΠΈΡ€, 1982. — Π‘. 384.

4. ΠŸΠ΅Ρ€ΠΌΠΈΠ½ΠΎΠ² О. Н. Π―Π·Ρ‹ΠΊ программирования Паскаль: Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ — М.: Π Π°Π΄ΠΈΠΎ ΠΈ ΡΠ²ΡΠ·ΡŒ, 1989. — Π‘. 128. — ISBN 5−256−311−9.

5. ΠšΡƒΠ»ΡŒΡ‚ΠΈΠ½ Н. Π‘. Delphi 6. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Object Pascal — БПб.: Π‘Π₯Π’-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 2001. — Π‘. 528. — ISBN 5−94 157−112−7.

6. ΠœΠΎΡ€Π³ΡƒΠ½ А. Н. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Паскаль (Pascal). ΠžΡΠ½ΠΎΠ²Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ структур Π΄Π°Π½Π½Ρ‹Ρ… — М.: Π”ΠΈΠ°Π»Π΅ΠΊΡ‚ΠΈΠΊΠ°, 2005. — Π‘. 576. — ISBN 5−8459−0935-X.

7. Π ΡƒΠ±Π΅Π½ΠΊΠΈΠ½Π³ Н.Π”ΠΆ. Π’ΡƒΡ€Π±ΠΎ Паскаль для Windows: Π² 2-Ρ… Ρ‚ΠΎΠΌΠ°Ρ…. ΠŸΠ΅Ρ€. Ρ Π°Π½Π³Π». — Πœ.: ΠœΠΈΡ€, 1993.

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

Π›Π˜Π‘Π’Π˜ΠΠ“ ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ« Листинг 1 — Код ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠŸΠ°ΡΠΊΠ°Π»ΡŒ.

program graf;

uses graphabc, crt;

var N: integer;

gr:array[1.100,1.100] of integer;

Fullgr:array[1.100,1.100] of integer;

Addgr:array[1.100,1.100] of integer;

KoordV:array[1.100,1.100] of integer;

i, j, k, Nv, M, l, R, AR:integer;

X, Y, Xc, Yc: integer;

pr, pr1, pr2:boolean;

Alf, Ug: real;

XcFrom, YcFrom, XcTo, YcTo: integer;

begin

clrscr;

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ количСство Π²Π΅Ρ€ΡˆΠΈΠ½ Π³Ρ€Π°Ρ„Π°');

readln (N);

{Π’Π²ΠΎΠ΄ Π³Ρ€Π°Ρ„Π°}

k:=1;

i:=0;

while k<>0 do

begin

i:=i+1;

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ€Π΅Π±Ρ€ΠΎ Π³Ρ€Π°Ρ„Π°');

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹');

readln (Nv);

gr[1,i]: =Nv;

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹');

readln (Nv);

gr[2,i]: =Nv;

writeln ('EΡ‰Π΅ ΠΎΠ΄Π½Ρƒ Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ? (1/0)');

readln (k);

end;

M:=i; {количСство Ρ€Π΅Π±Π΅Ρ€}

clrscr;

writeln ('Π—Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„');

for i:=1 to M do

writeln (Gr[1,i], ' ', Gr[2,i]);

readln;

{Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„}

writeln ('ΠŸΠΎΠ»Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„');

k:=0;

for i:=1 to N-1 do

for j:=i+1 to N do

begin

k:=k+1;

FullGr[1,k]: =i;

FullGr[2,k]:=j;

writeln (FullGr[1,k], ' ', FullGr[2,k]);

end;

readln ();

{Π·Π°Π΄Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π³Ρ€Π°Ρ„}

i:=0;

l:=0;

writeln ('Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π³Ρ€Π°Ρ„');

for j:=1 to k do

begin

{Π±Π΅Ρ€Π΅ΠΌ j-ΠΎΠ΅ Ρ€Π΅Π±Ρ€ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π»ΠΈ ΠΎΠ½ΠΎ Π² Π³Ρ€Π°Ρ„}

pr:=false;

for i:=1 to M do

begin

pr1:=(FullGr[1,j]=gr[1,i]) and (FullGr[2,j]=gr[2,i]);

pr2:=(FullGr[2,j]=gr[1,i]) and (FullGr[1,j]=gr[2,i]);

if (pr1 or pr2) then pr:=true

end;

if not (pr) then

{добавляСм Ρ€Π΅Π±Ρ€ΠΎ Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π³Ρ€Π°Ρ„}

begin

l:=l+1;

AddGr[1,l]: =FullGr[1,j];

AddGr[2,l]:=FullGr[2,j];

writeln (AddGr[1,l], ' ', AddGr[2,l]);

end;

end;

AR:=l;

readln;

{ΠŸΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„Π°}

ClearWindow ();

TextOut (0,0,'Π—Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„');

SetPenWidth (3);

SetPenColor (clBlue);

X:=320;

Y:=200;

Alf:=2*Pi/N;

Ug:=0;

for i:=1 to N do

begin

Xc:=X+trunc (150*cos (Ug));

Yc:=Y-trunc (150*sin (Ug));

R:=25;

KoordV[1,i]: =Xc;

KoordV[2,i]:=Yc;

Ellipse (Xc — R, Yc — R, Xc + R, Yc + R);

textOut (xc, yc, inttostr (i));

Ug:=Ug+Alf;

end;

SetPenWidth (1);

SetPenColor (clred);

for j:=1 to M do

begin

XcFrom:=KoordV[1,gr[1,j]];

YcFrom:=KoordV[2,gr[1,j]];

XcTo:=KoordV[1,gr[2,j]];

YcTo:=KoordV[2,gr[2,j]];

MoveTo (XcFrom, YcFrom);

LineTo (XcTo, YcTo);

end;

{ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„Π° построСно}

readln;

{ΠŸΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°}

ClearWindow ();

TextOut (0,0,'ΠŸΠΎΠ»Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„');

SetPenWidth (3);

SetPenColor (clBlue);

X:=320;

Y:=200;

Alf:=2*Pi/N;

Ug:=0;

for i:=1 to N do

begin

Xc:=X+trunc (150*cos (Ug));

Yc:=Y-trunc (150*sin (Ug));

R:=25;

KoordV[1,i]: =Xc;

KoordV[2,i]:=Yc;

Ellipse (Xc — R, Yc — R, Xc + R, Yc + R);

textOut (xc, yc, inttostr (i));

Ug:=Ug+Alf;

end;

SetPenWidth (1);

SetPenColor (clred);

for j:=1 to k do

begin

XcFrom:=KoordV[1,Fullgr[1,j]];

YcFrom:=KoordV[2,Fullgr[1,j]];

XcTo:=KoordV[1,Fullgr[2,j]];

YcTo:=KoordV[2,Fullgr[2,j]];

MoveTo (XcFrom, YcFrom);

LineTo (XcTo, YcTo);

end;

{ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° построСно}

readln;

{ΠŸΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π°}

ClearWindow ();

TextOut (0,0,'Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π³Ρ€Π°Ρ„');

SetPenWidth (3);

SetPenColor (clBlue);

X:=320;

Y:=200;

Alf:=2*Pi/N;

Ug:=0;

for i:=1 to N do

begin

Xc:=X+trunc (150*cos (Ug));

Yc:=Y-trunc (150*sin (Ug));

R:=25;

KoordV[1,i]: =Xc;

KoordV[2,i]:=Yc;

Ellipse (Xc — R, Yc — R, Xc + R, Yc + R);

textOut (xc, yc, inttostr (i));

Ug:=Ug+Alf;

end;

SetPenWidth (1);

SetPenColor (clred);

for j:=1 to AR do

begin

XcFrom:=KoordV[1,addgr[1,j]];

YcFrom:=KoordV[2,addgr[1,j]];

XcTo:=KoordV[1,addgr[2,j]];

YcTo:=KoordV[2,addgr[2,j]];

MoveTo (XcFrom, YcFrom);

LineTo (XcTo, YcTo);

end;

{ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„Π° построСно}

end.

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