Π”ΠΈΠΏΠ»ΠΎΠΌΡ‹, курсовыС, Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚Ρ‹, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅...
Брочная ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π² ΡƒΡ‡Ρ‘Π±Π΅

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

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

Рассмотрим Π΄Π²Π° ΠΊΡ€Π°ΠΉΠ½ΠΈΡ… случая двиТСния ΠΏΠΎ ΡΠ΅Ρ‚ΠΈ. Когда ΡΠ΅Ρ‚ΡŒ прСдставлСна Π² Π²ΠΈΠ΄Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, СстСствСнно Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π»Π΅Π½ΠΈΠ²ΠΎΠ³ΠΎ двиТСния ΠΏΠΎ ΡΠ΅Ρ‚ΠΈ, ΠΊΠΎΠ³Π΄Π° послС вычислСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ выбираСтся ΠΎΠ΄Π½Π° ΠΈΠ· Ρ‚ΠΎΡ‡Π΅ΠΊ, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ всС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ значСния ΡƒΠΆΠ΅ вычислСны, ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ся значСния Π² Π΄Π°Π½Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅. Как Π²ΠΈΠ΄Π½ΠΎ, Π² Ρ‡Π°ΡΡ‚ности Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΉ Π³ΠΎΡ€Ρ‹, этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠžΠ±Ρ‰Π°Ρ характСристика структурного программирования

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

ΠœΡ‹ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π΅ΠΌ структурноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°ΠΊ Ρ€Π°Π²Π½ΠΎΠΏΡ€Π°Π²Π½Ρ‹ΠΉ Ρ‡Π»Π΅Π½ сообщСства Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Π΅ΠΌΡƒ Π΄Ρ€ΡƒΠ·Π΅ΠΉ-сопСрников1) .

НачнСм с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ обратимся ΠΊ ΠΈΡΡ‚ΠΎΡ€ΠΈΠΈ.

Π’ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ схСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π±Ρ‹Π»ΠΎ Π·Π°ΠΌΠ΅Ρ‡Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ случаи Π±Π»ΠΎΠΊ-схСм Π»Π΅Π³Ρ‡Π΅ ΠΏΠΎΠ΄Π΄Π°ΡŽΡ‚ΡΡ Π°Π½Π°Π»ΠΈΠ·Ρƒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ СстСствСнно Π±Ρ‹Π»ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ класс Π±Π»ΠΎΠΊ-схСм, Ρ‡Ρ‚ΠΎ ΠΈ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΈΡ‚Π°Π»ΡŒΡΠ½ΡΠΊΠΈΠ΅ ΡƒΡ‡Π΅Π½Ρ‹Π΅ Π‘. Π‘Π΅ΠΌ ΠΈ К. Π”ΠΆΠ°ΠΊΠΎΠΏΠΈΠ½ΠΈ Π² 1966 Π³. ΠžΠ½ΠΈ Π΄ΠΎΠΊΠ°Π·Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ Π»ΡŽΠ±ΡƒΡŽ Π±Π»ΠΎΠΊ-схСму ΠΌΠΎΠΆΠ½ΠΎ привСсти ΠΊ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ Π²ΠΈΠ΄Ρƒ, использовав нСсколько Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±ΡƒΠ»Π΅Π²Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π­. ДСйкстра ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΠ», Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ‚Π°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π»Π΅Π³Ρ‡Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹ΠΌΠΈ ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±Π»ΠΎΠΊ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Π²Ρ…ΠΎΠ΄ ΠΈ ΠΎΠ΄ΠΈΠ½ Π²Ρ‹Ρ…ΠΎΠ΄.

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ структурного программирования Π­. ДСйкстра ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ» ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ лишь конструкциями Ρ†ΠΈΠΊΠ»Π° ΠΈ ΡƒΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, изгоняя go to ΠΊΠ°ΠΊ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡Π°Ρ‰Π΅Π΅ этому ΡΡ‚ΠΈΠ»ΡŽ2) .

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ основано Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π° Ρ‚СорСтичСском Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π΅ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ рСкурсивных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° рассматриваСтся ΠΊΠ°ΠΊ частично-рСкурсивный ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π°Π΄ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ ΠΈ ΠΈΡΡ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ опСрациями. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ базируСтся Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π², ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго Π½Π° Π΅ΡΡ‚СствСнном Π²Ρ‹Π²ΠΎΠ΄Π΅. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ соотвСтствуСт структурС ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅Π³ΠΎ матСматичСского рассуТдСния, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ слоТных Π»Π΅ΠΌΠΌ ΠΈ Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½Ρ‹Ρ… понятий3) .

БрСдства структурного программирования Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π²ΠΎ Π²ΡΠ΅ языки программирования Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½Π΅Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ языки. Они Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ основноС мСсто Π² ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… курсах программирования ΠΈ Π² Ρ‚СорСтичСских Ρ€Π°Π±ΠΎΡ‚Π°Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ,[4] ,[9]).

ΠŸΡ€ΠΈ структурном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ присваивания ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ дСйствия становятся ΠΎΡ€Π³Π°Π½ΠΈΡ‡Π½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Достаточно лишь Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ каТдая пСрСмСнная Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ использовалась для ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ†Π΅Π»ΠΈ, ΠΈ Π½Π΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ «ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ», ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ нСнуТная Π² Π΄Π°Π½Π½ΠΎΠΌ мСстС пСрСмСнная Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΠ΄ совсСм Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Вакая «ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ» Π·Π°ΠΏΡƒΡ‚Ρ‹Π²Π°Π΅Ρ‚ структуру ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… зависимостСй, которая ΠΏΡ€ΠΈ Π΄Π°Π½Π½ΠΎΠΌ стилС Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ согласована со ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ СстСствСнно Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… классах Π·Π°Π΄Π°Ρ‡, ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго Π² Ρ‚Π°ΠΊΠΈΡ…, Π³Π΄Π΅ Π·Π°Π΄Π°Ρ‡Π° СстСствСнно расщСпляСтся Π½Π° ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ, Π° ΠΈΠ½Ρ„ормация - Π½Π° Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ нСзависимыС структуры Π΄Π°Π½Π½Ρ‹Ρ…. Основной Π΅Π³ΠΎ ΠΈΠ½Π²Π°Ρ€ΠΈΠ°Π½Ρ‚: дСйствия ΠΈ ΡƒΡΠ»ΠΎΠ²ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹.

НСобходимой Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ структурного стиля программирования являСтся соблюдСниС согласованности, Π° Π² ΠΈΠ΄Π΅Π°Π»Π΅ ΠΈ Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π°, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ пространства. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΡŽΠ±ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΏΠΎΠ»Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… называСтся ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ пространством Π·Π°Π΄Π°Ρ‡ΠΈ.

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

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

К ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π»ΠΈΠ±ΠΎ Ρ†ΠΈΠΊΠ»Ρ‹, Π»ΠΈΠ±ΠΎ рСкурсии.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

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

ΠŸΠΎΡ‚ΠΎΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Разбивая Π·Π°Π΄Π°Ρ‡Ρƒ Π½Π° ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ, программист прСдусматриваСт ΠΈΡ… Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΠ΅ ΠΏΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ: ΠΎΠ΄Π½ΠΈ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π΄Π°Π½Π½Ρ‹Π΅ для ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Π”Π°Π½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² Π»ΠΎΠ³ΠΈΡ‡Π΅ΡΠΊΠΈ связанныС Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ структурам Π·Π°Π΄Π°Ρ‡ΠΈ Π»ΠΈΠ±ΠΎ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… конструкций, Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

ΠŸΡ€ΠΈΠ·Ρ€Π°ΠΊΠΈ. Часто Π΄Π°ΠΆΠ΅ сама ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ объяснСна Ρ‡Π΅Ρ€Π΅Π· понятия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π΅. Π•Ρ‰Π΅ Ρ‡Π°Ρ‰Π΅ это происходит для Π΅Π΅ ΡΠ²ΡΠ·Π΅ΠΉ с Π²Π½Π΅ΡˆΠ½ΠΈΠΌ ΠΌΠΈΡ€ΠΎΠΌ. ПониманиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ лишь послС сопоставлСния Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π²Π½ΡƒΡ‚Ρ€ΠΈΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π²Π½Π΅ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌΠΈ. Π­Ρ‚ΠΈ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ Π²Π½Π΅ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (ΠΏΡ€ΠΈΠ·Ρ€Π°ΠΊΠΈ) часто Π½Π΅ ΠΏΡ€ΠΎΡΡ‚ΠΎ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹, Π½ΠΎ Π΄Π°ΠΆΠ΅ Π²Ρ€Π΅Π΄Π½Ρ‹ для исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹5) .

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ» Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ввСдСния ΠΏΡ€ΠΈΠ·Ρ€Π°ΠΊΠΎΠ² для логичСского ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π“.Π‘. Π¦Π΅ΠΉΡ‚ΠΈΠ½ Π² 1971 Π³. Π’ АмСрикС это «Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ» ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΈ Π·Π°Π½ΠΎΠ²ΠΎ Π² 1979 Π³., хотя упомянутая ΡΡ‚Π°Ρ‚ΡŒΡ Π¦Π΅ΠΉΡ‚ΠΈΠ½Π° Π±Ρ‹Π»Π° ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ языкС Π² ΠΎΠ±Ρ‰Π΅Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠΈ. Π”Π°ΠΆΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ сущностям Π±Ρ‹Π»ΠΎ Π΄Π°Π½ΠΎ Ρ‚ΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅… Π­Ρ‚ΠΎΠΌΡƒ Π²Π°ΠΆΠ½Π΅ΠΉΡˆΠ΅ΠΌΡƒ ΠΈ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌΡƒ ΠΏΠΎΠ½ΡΡ‚ΠΈΡŽ посвящСна ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ лСкция Π² ΠΊΡƒΡ€ΡΠ΅ «ΠžΡΠ½ΠΎΠ²Π°Π½ΠΈΡ программирования» .

ΠŸΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ — значСния, конструкции ΠΈ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ для понимания Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ся ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Π½ΠΎ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Π½ΠΎ Π²ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ систСмС.

ΠŸΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠ·Ρ€Π°ΠΊΠ°ΠΌ. На ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠΎΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ матСрия ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ°Π΅Ρ‚ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΈ Π² ΡΡ‚ΠΎΠΌ качСствС противостоят всСй совокупности ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… сущностСй, ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ… структуру ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ ΠΏΡ€ΠΈΠ·Ρ€Π°Ρ‡Π½Ρ‹Ρ…, — ΠΈ ΠΏΠΎΡ€ΠΎΡŽ Π³Ρ€ΡƒΠ±ΠΎ Π΅Π΅ ΠΈΡΠΊΠ°ΠΆΠ°ΡŽΡ‚. Но Π±Π΅Π· ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΎΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° просто Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ нСэффСктивно.

Для структурного программирования вСсьма Π²Π°ΠΆΠ½ΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅:

ВсС структуры ΠΏΠΎΠ΄Ρ‡ΠΈΠ½ΡΡŽΡ‚ΡΡ структурС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ пространства.

Π­Ρ‚ΠΎ ΠΎΠ±Ρ‰Π΅Π΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ конкрСтизируСтся Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅.

НСобходимо, Ρ‡Ρ‚ΠΎΠ±Ρ‹ структура управлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±Ρ‹Π»Π° согласована со ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΎΠΉ Π΅Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ пространства. КаТдой структурС управлСния ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠΎΠ³Π»Π°ΡΡƒΡŽΡ‰ΠΈΠ΅ΡΡ с Π½Π΅ΠΉ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ пространства. Π­Ρ‚ΠΎ условиС позволяСт Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΡƒ Π»Π΅Π³ΠΊΠΎ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ порядок выполнСния конструкций Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

ΠŸΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ посрСдством обращСния ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ ΠΈΠ· ΠΎΠ±Ρ‰Π΅ΠΉ части ΠΈΡ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… пространств (Π² ΡΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… языках Ρ‡Π°Ρ‰Π΅ всСго ΠΊ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌ).

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΡ‚Π΅ΠΊΠ°Ρ‚ΡŒ согласно ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ структур управлСния; ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‡Π΅Ρ‚ΠΊΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄Π΅ ΠΈ Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, свойства ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ логичСски Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ясно ΠΎΡΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒΡΡ ΠΈ Π² ΠΈΠ΄Π΅Π°Π»Π΅ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒΡΡ Π² ΡΠ°ΠΌΠΎΠΌ тСкстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π² ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰Π΅ΠΉ Π΅Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ6) .

ОписаниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ…, Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ структурном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ строго подчиняСтся Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΡŽ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ.

ВсС ΠΏΡ€ΠΈΠ·Ρ€Π°ΠΊΠΈ Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ структурном мСстС ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ сущностям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, согласно парадоксу изобрСтатСля, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ для эффСктивного Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ.

ВсС ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ строго Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² Ρ‚ΠΎΠΌ мСстС, Π³Π΄Π΅ ΠΈΡ… Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ ввСсти. Π–Π΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π°ΠΆΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡ… ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, Ρ‡Π΅ΠΌ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ сущности, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, оставляя мнСмоничСскиС ΠΈΠΌΠ΅Π½Π° лишь для ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… сущностСй, Π° ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΆΠΎΠΊΠ΅Ρ€Π°ΠΌΠΈ Ρ‚ΠΈΠΏΠ° x ΠΈΠ»ΠΈ i. НСобходимо строго ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ Π½Π΅ ΠΈΡΠΊΠ°ΠΆΠ°Π»ΠΈ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½ΡƒΡŽ структуру ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΡƒΡ‡ΡˆΠ΅ всСго описано тСорСтичСски, Π½ΠΎ Ρ‡Π°ΡΡ‚Π½Ρ‹Π΅ описания Π½Π΅ ΡΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Π΅Π΄ΠΈΠ½ΡƒΡŽ систСму. Одни ΠΊΠ½ΠΈΠ³ΠΈ Ρ‚Ρ€Π°ΠΊΡ‚ΡƒΡŽΡ‚ Π΅Π³ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния программиста, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ — с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ‚Π΅ΠΎΡ€Π΅Ρ‚ΠΈΠΊΠ°. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ здСсь Π΅Π΄ΠΈΠ½ΠΎΠΉ систСмы взглядов Π΅Ρ‰Π΅ Π½Π΅Ρ‚, хотя, Π²ΠΈΠ΄ΠΈΠΌΠΎ, всС основания для Π΅Π΅ Ρ„ормирования ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ.

Π‘Π΅Ρ‚ΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Рассмотрим ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ структуру Π΄Π°Π½Π½Ρ‹Ρ…, которая появляСтся ΠΏΡ€ΠΈ структурном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π£Ρ‡Π΅Ρ‚ этой структуры позволяСт ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»Π°Π³ΠΈΠ΅ поТСлания ΠΎ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ Ρ…ΠΎΠ΄Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ управлСния Π² Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ ΡΡ‚Ρ€ΠΎΠ³ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΡƒ.

Π‘Π΅Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ описана ΠΊΠ°ΠΊ ацикличСский ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ всС ΠΊΠΎ-ΠΏΡƒΡ‚ΠΈ (Ρ‚.Π΅. ΠΏΡƒΡ‚ΠΈ, взятыС Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚) ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ ΠΈ Π²Π΅Ρ€ΡˆΠΈΠ½Π°ΠΌ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ сопоставлСны значСния.

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π˜Π·Π²Π΅ΡΡ‚Π½ΠΎΠΌΡƒ стандартному ΠΏΡ€ΠΈΠ΅ΠΌΡƒ программирования Π² ΡΠ·Ρ‹ΠΊΠ°Ρ… Π±Π΅Π· ΠΊΡ€Π°Ρ‚Π½Ρ‹Ρ… присваиваний — ΠΎΠ±ΠΌΠ΅Π½Ρƒ Π΄Π²ΡƒΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ΅.

z: = second;

second: = first;

first: = z;

соотвСтствуСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΡΠ΅Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…:

Рис. 1 ОбмСн Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Π—Π΄Π΅ΡΡŒ first, second, z ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ коммСнтариями, Π° ΡΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠΏΡƒΡ‰Π΅Π½Ρ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΡ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ значСния Π½Π΅ Π²Π°ΠΆΠ½Ρ‹.

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

first, second: =second, first;

Π”Π°ΠΆΠ΅ Ссли Π±Ρ‹ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ сСбС, ΠΊΠ°ΠΊ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ станСт Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ присваиваниС ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ присваиваСтся!

Π’ ΡΠ»ΡƒΡ‡Π°Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ вычислСния Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π»Π°1) ΡΠ΅Ρ‚ΡŒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ бСсконСчна Π²Π½ΠΈΠ·, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любоС число, Π½ΠΎ ΠΏΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅ Π΅Ρ‰Π΅ ΠΏΡ€ΠΎΡ‰Π΅:

Рис. 2

ΠŸΠ΅Ρ€Π΅ΠΊΡ€Π΅ΡΡ‚Π½Ρ‹Ρ… зависимостСй ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ Π½Π΅Ρ‚, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ Π΄Π²Π΅ извСстныС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π»Π°: цикличСская ΠΈ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠ²Π½Π°Ρ. ПокаТСм ΠΈΡ… Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… языках, ΠΈΠ±ΠΎ всС Ρ€Π°Π²Π½ΠΎ, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΌ языкС ΠΈΡ… ΠΏΠΈΡΠ°Ρ‚ΡŒ.

function fact (n: integer): integer;

var j, res: integer;

begin

res: =1;

for j: =1 to n do res: =res*j;

result: =res;

end;

int fact (int n)

{if (n==0) return (1);

else return (n*fact (n-1)); }

Π‘Ρ…Π΅ΠΌΠ° построСния цикличСской ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ называСтся ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ. ЗначСния Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° зависят ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ.

Для чисСл Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ (Ρ‚Π° ΠΆΠ΅ ΡΡ…Π΅ΠΌΠ° (2)) структура ΡƒΠΆΠ΅ нСсколько слоТнСС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ…, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ число Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ зависит ΠΎΡ‚ Π΄Π²ΡƒΡ… ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ…, Π½ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΈ Π·Π΄Π΅ΡΡŒ.

int fib (int n)

{int fib1, fib2;

fib1=1; fib2=1;

if (n>2) {

for (int i=2; i

int j; j=fib1+fib2; fib1=fib2; fib2=j;

}

};

return (fib2);

}

Π˜Ρ‚Π°ΠΊ, Π² ΠΏΠΎΡ‚ΠΎΠΊΠ΅ измСняСтся структура ΠΈΠ· Π΄Π²ΡƒΡ… элСмСнтов. Π•Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ прямо ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ структуру Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ ΡΡ‚ΠΎ слСдовало Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π±ΡƒΠ΄ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ…ΠΎΡ‚ΡŒ Ρ‡ΡƒΡ‚ΡŒ-Ρ‡ΡƒΡ‚ΡŒ послоТнСС. Π’ΠΎΠ³Π΄Π° вмСсто ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ j ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π±Ρ‹ ввСсти Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ структуры.

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ имССтся Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠ° — ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Ρ†ΠΈΠΊΠ»Π° i, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ΅Π½ лишь для Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π°.

РСкурсивная рСализация чисСл Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ Π΅Ρ‰Π΅ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ ΡΠ»ΡƒΠΆΠΈΡ‚ Π²Π΅Π»ΠΈΠΊΠΎΠ»Π΅ΠΏΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ прСзрСнная матСрия ΡƒΠ±ΠΈΠ²Π°Π΅Ρ‚ ΠΊΡ€Π°ΡΠΈΠ²ΡƒΡŽ, Π½ΠΎ Π½Π΅Π³Π»ΡƒΠ±ΠΎΠΊΡƒΡŽ идСю.

int fib (int n)

{ if (n<3) return (1);

else return (fib (n-1) +fib (n-2));

}

Если n Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ Π²Π΅Π»ΠΈΠΊΠΎ, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π±Π΅Π· всякого Ρ‚ΠΎΠ»ΠΊΡƒ: Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ всСгда Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅! Π—Π°Ρ‚ΠΎ всС ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ ΡƒΠ±Ρ€Π°Π½Ρ‹…

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½Π΅ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ рСкурсии ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ очСвидная. ΠŸΡƒΡΡ‚ΡŒ Π½Π°Π΄ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡƒΡ‚ΡŒ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ максимальноС количСство Π·ΠΎΠ»ΠΎΡ‚Π°, Ρ‡Π΅Ρ€Π΅Π· ΡΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π½Π° Ρ€ΠΈΡ. 1.

Рис. 1 Золотая Π³ΠΎΡ€Π°

ΠŸΡ€ΠΈ цикличСской ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ вычислСний Π½Π°ΠΌ придСтся ΠΏΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ Π³ΠΎΡ€Ρ‹ всСго ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· (Π½Π°ΠΉΡ‚ΠΈ Π΄ΠΎΠ±Ρ‹Ρ‡Ρƒ Π½Π° ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΏΡƒΡ‚ΠΈ Π² ΡΡ‚Ρƒ Ρ‚ΠΎΡ‡ΠΊΡƒ). Π—Π΄Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎ ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡƒΡ‚Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄Π΅Π»Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²ΠΎΠ»Π½Ρ‹ ΠΈΠ»ΠΈ динамичСского программирования: ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Ρ€Π΅Π·ΠΎΠΊ локально ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡƒΡ‚ΠΈ локально ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π΅Π½. Π­Ρ‚ΠΎ свойство являСтся ΠΏΡ€ΠΈΠ·Ρ€Π°ΠΊΠΎΠΌ, стоящим Π·Π° ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ цикличСской Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Π° ΠΌΠ½ΠΎΠ³ΠΎΡ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ ΠΏΡƒΡ‚ΠΈ, соотвСтствСнно, ΠΏΡ€ΠΈΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΌΠΈ значСниями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ. Π’ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠ²Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΡ‹ Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅ΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ·Ρ€Π°ΠΊΠ°, ΠΈ ΠΎΠ½ Π±Π΅ΡΠΏΠΎΡ‰Π°Π΄Π½ΠΎ мстит Π·Π° Π²ΠΎΠΏΠΈΡŽΡ‰Π΅Π΅ Π½Π΅Π·Π½Π°Π½ΠΈΠ΅ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим случай, ΠΊΠΎΠ³Π΄Π° рСкурсивная рСализация Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ изящнСС цикличСской, Π»Π΅Π³Ρ‡Π΅ обобщаСтся ΠΈ Π½Π΅ Ρ…ΡƒΠΆΠ΅ ΠΏΠΎ ΡΡ„фСктивности2)

Рис. 3 Алгоритм Π•Π²ΠΊΠ»ΠΈΠ΄Π°

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΏΡƒΡ‚ΡŒ для получСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π½Π΅ Ρ€Π°Π·Π²Π΅Ρ‚вляСтся, ΠΈ Π½Π°ΠΌ остаСтся лишь Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΏΠΎ Π½Π΅ΠΌΡƒ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ (ΠΎΡ‚ Ρ†Π΅Π»ΠΈ ΠΊ ΠΈΡΡ…ΠΎΠ΄Π½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ) ΠΈ Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ большими шагами.

function Euklides (n, m: integer) integer; {

ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌ m<=n}

begin

if n=m then resut: =n

else result: =Euklides (n mod m, m);

end;

Если ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ наибольший ΠΎΠ±Ρ‰ΠΈΠΉ Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ двиТСния ΠΎΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊ Ρ†Π΅Π»ΠΈ, Ρ‚ΠΎ Π½Π°ΠΌ придСтся ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π³Ρ€ΠΎΠΌΠ°Π΄Π½Ρ‹ΠΉ массив Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΠžΠ”, лишь ничтоТная Ρ‡Π°ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π½ΡƒΠΆΠ½Π° для построСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. Π—Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ Π½Π° Π²Ρ‹Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ элСмСнта Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΠ°Π»Ρ‹, Π° ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ двиТСния ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΉ счСт Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚.

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

Рассмотрим Π΄Π²Π° ΠΊΡ€Π°ΠΉΠ½ΠΈΡ… случая двиТСния ΠΏΠΎ ΡΠ΅Ρ‚ΠΈ. Когда ΡΠ΅Ρ‚ΡŒ прСдставлСна Π² Π²ΠΈΠ΄Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, СстСствСнно Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π»Π΅Π½ΠΈΠ²ΠΎΠ³ΠΎ двиТСния ΠΏΠΎ ΡΠ΅Ρ‚ΠΈ, ΠΊΠΎΠ³Π΄Π° послС вычислСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ выбираСтся ΠΎΠ΄Π½Π° ΠΈΠ· Ρ‚ΠΎΡ‡Π΅ΠΊ, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ всС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ значСния ΡƒΠΆΠ΅ вычислСны, ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ся значСния Π² Π΄Π°Π½Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅. Как Π²ΠΈΠ΄Π½ΠΎ, Π² Ρ‡Π°ΡΡ‚ности Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΉ Π³ΠΎΡ€Ρ‹, этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½ ΠΈ Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ распараллСлСн. Но Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ Π½Π°ΠΌ придСтся Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ способ Π»Π΅Π½ΠΈΠ²ΠΎΠ³ΠΎ двиТСния, ΠΈ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ΡƒΠ΄Π°Ρ‡Π΅Π½: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ²ΠΎΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ‚ΡƒΠΏΠΈΠΊ, ΠΊΠΎΠ³Π΄Π° Ρƒ Π½Π°Ρ Π΅ΡΡ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ†Π΅Π»ΠΈ. Π”Π°ΠΆΠ΅ Π² Ρ‚СорСтичСских исслСдованиях приходится Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ условия Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ Π»Π΅Π½ΠΈΠ²ΠΎΠ³ΠΎ двиТСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ достиТСниС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° (см., Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡƒ ΠΎ ΠΏΠΎΠ»Π½ΠΎΡ‚Π΅ сСмантичСских Ρ‚Π°Π±Π»ΠΈΡ† Π² ΠΊΠ½ΠΈΠ³Π΅).

Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΡ€Π°ΠΉΠ½ΠΈΠΉ случай двиТСния ΠΏΠΎ ΡΠ΅Ρ‚ΠΈ, ΠΊΠΎΠ³Π΄Π° ΡΠ΅Ρ‚ΡŒ дСлится Π½Π° ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ слои. НапримСр, Π² ΡΠ΅Ρ‚ΠΈ (4)

Рис.4 ΠŸΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ замСняСмый массив

МоТно ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ слой статичСским массивом ΠΈ Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΎ ΡΠ°ΠΌΠΎΠΉ сСти. Π—Π°Π±Ρ‹Ρ‚Ρ‹ΠΉ ΠΏΡ€ΠΈΠ·Ρ€Π°ΠΊ мстит Π·Π° ΡΠ΅Π±Ρ, Π² Ρ‡Π°ΡΡ‚ности, ΠΏΡ€ΠΈ нСобходимости распараллСливания вычислСний, ΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ случай ΠΎΡ‚Π½ΡŽΠ΄ΡŒ Π½Π΅ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚Π΅Π½ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ.

Рис. 5 ΠŸΠΎΡΡ‚Π΅ΠΏΠ΅Π½Π½ΠΎ замСняСмый массив

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

Π•Ρ‰Π΅ Π­. ДСйкстра Π² ΠΊΠ½ΠΈΠ³Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ» Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ ΠΈΠΌ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ значСния. Но Ρ‚акая «ΠΏΠΈΡΠ°Π½ΠΈΠ½Π°» Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°Π»Π° Ρ…Π°ΠΊΠ΅Ρ€ΠΎΠ² ΠΈ Π² ΠΈΡ‚ΠΎΠ³Π΅ Ρ‚Π°ΠΊ ΠΈ Π½Π΅ Π²ΠΎΡˆΠ»Π° Π² ΠΎΠ±Ρ‰Π΅ΠΏΡ€ΠΈΠ·Π½Π°Π½Π½Ρ‹Π΅ систСмы программирования. БСйчас ΠΈΠ½Π΄ΡƒΡΡ‚Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Ρ‚Π°ΠΊΠΈΡ… описаний, Π½ΠΎ ΠΈΠ·-Π·Π° отсутствия ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π° всС это остаСтся Π±Π»Π°Π³ΠΈΠΌΠΈ поТСланиями, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π’Π°ΡˆΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±Ρ‹Π»Π° понятна хотя Π±Ρ‹ Π’Π°ΠΌ, описывайтС всС пСрСкрСстныС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ связи!

Π Π΅Π·ΡŽΠΌΠΈΡ€ΡƒΡ Π²Ρ‹ΡˆΠ΅ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄Ρ‹.

Π‘Π΅Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… сама ΠΏΠΎ ΡΠ΅Π±Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚, Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ пСрСходят лишь Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ свойства сСти Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΡ€ΠΈΠ·Ρ€Π°ΠΊΠΎΠ² ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ куски сСти Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° опрСдСляСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠ΅Ρ‚ΡŒΡŽ Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ дисциплиной двиТСния ΠΏΠΎ ΡΡ‚ΠΎΠΉ сСти.

Π’ ΡΠ»ΡƒΡ‡Π°Π΅, Ссли ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½Ρ‹Π΅ слои сСти, ΠΏΠΎΡΠ²Π»ΡΡŽΡ‰ΠΈΠ΅ΡΡ ΠΏΡ€ΠΈ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΈ согласно Π·Π°Π΄Π°Π½Π½ΠΎΠΉ дисциплинС, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ ΠΈ ΡΠΎΡΡ‚оят ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ… взаимосвязанных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρƒ Π½Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ цикличСская ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°.

Π’ ΡΠ»ΡƒΡ‡Π°Π΅, Ссли вычислСниС ΠΌΠΎΠΆΠ½ΠΎ свСсти ΠΊ Π²Ρ‹Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡΠΌ для нСзависимых элСмСнтов сСти, Ρ‡Π°Ρ‰Π΅ всСго ΡƒΠ΄ΠΎΠ±Π½Π΅ΠΉ рСкурсия.

Π‘Π°ΠΌΡ‹ΠΉ ΠΎΠ±Ρ‰ΠΈΠΉ способ двиТСния ΠΏΠΎ ΡΠ΅Ρ‚ΠΈ — Π»Π΅Π½ΠΈΠ²ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ ΠΏΡ€Π°Π²ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ сСти, Ссли вычислСны всС Π΅Π³ΠΎ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠΈ.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΠΉΡ‚Ρ€Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ способом Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ получСнная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°: ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ, Π½Π΅Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ, совмСстно, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ Π»ΠΈΠ±ΠΎ Π΄Π°ΠΆΠ΅ Π½Π° Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ систСмС, — ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΡΠ΅Ρ‚ΡŒ лишь частично прСдписываСт порядок дСйствий.

ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ порядка дСйствий Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ являСтся ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΎΠΉ, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ постоянно Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΎΠ½ Ρ‡Π°Ρ‰Π΅ всСго Π²Ρ€Π΅Π΄ΠΈΡ‚ ΠΏΡ€ΠΈ пСрСстройкС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

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

Π’Ρ‹Π±ΠΎΡ€.

РассмотрСнныС Π΄ΠΎ ΡΠΈΡ… ΠΏΠΎΡ€ сСти Π΄Π°Π½Π½Ρ‹Ρ… прСдставляли Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Ρ‚ΠΎΡ‚ случай, ΠΊΠΎΠ³Π΄Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ². УсловиС Π±Ρ‹Π»ΠΎ лишь срСдством ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ этапа вычислСний ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ. Однако Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° содСрТит Π²Ρ‹Π±ΠΎΡ€. Для прСдставлСния Π²Ρ‹Π±ΠΎΡ€Π° Π² ΡΠ·Ρ‹ΠΊΠ°Ρ… программирования ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ условныС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π²Ρ‹Π±ΠΎΡ€Π°. Рассмотрим, Ρ‡Ρ‚ΠΎ ΠΆΠ΅ стоит Π·Π° Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1. ΠŸΡƒΡΡ‚ΡŒ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π’Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ больший ΠΈΠ· Π΄Π²ΡƒΡ… Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ памяти ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² Π½Π° Π΄ΠΈΡΠΊ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π·Π½ΠΈΡ†Π° Π² Π΄Π»ΠΈΠ½Π΅ ΠΌΠ΅Π½Π΅Π΅ 216=65 536) нСсущСствСнна, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΠ΅.

if

length (A) — lengtn (B) >65 536 {

Save (A); Dispose (A); A_present: =false; },

length (A) — lengtn (B) <65 536 {

Save (B); Dispose (B); B_present: =false; }

fi

ΠœΡ‹ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π»ΠΈΡΡŒ Π΄Π°Π½Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ярчС ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚ΡŒ условия, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… производятся дСйствия.

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° записи базируСтся Π½Π° ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ охраняСмых ΠΊΠΎΠΌΠ°Π½Π΄, ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π­. ДСйкстрой. ΠžΡ…Ρ€Π°Π½ΡΠ΅ΠΌΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° исполняСтся лишь ΠΏΡ€ΠΈ условии, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° ΠΎΡ…Ρ€Π°Π½Π°. Но Π΅ΡΠ»ΠΈ Π΄Π°Π½Π½Ρ‹ΠΉ тСкст Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ программист, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ 'лишь' Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ условия ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎ ДСйкстрС состоит ΠΈΠ· ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° охраняСмых ΠΊΠΎΠΌΠ°Π½Π΄. Π’ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ синтаксисС ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ для Π½ΠΈΡ… Ρ„ΠΎΡ€ΠΌΡƒ

Guard Command

ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ располоТСниС охраняСмых ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ Π²Ρ‹Π±ΠΎΡ€Π° Π±Π΅Π·Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎ1). ВыполняСтся ΠΎΠ΄Π½Π° ΠΈΠ· охраняСмых ΠΊΠΎΠΌΠ°Π½Π΄, ΠΎΡ…Ρ€Π°Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ истинна. Π˜ΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π² ΡΠ·Ρ‹ΠΊΠ°Ρ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ условных ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠ°ΠΌΠΈ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ охраняСмых ΠΊΠΎΠΌΠ°Π½Π΄.

Из ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ слСдуСт, Ρ‡Ρ‚ΠΎ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΉ сути Π²Ρ‹Π±ΠΎΡ€ Ρ‚Π°ΠΊ ΠΆΠ΅ Π½Π΅Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½, ΠΊΠ°ΠΊ ΠΈ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ структурной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Если Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ нСсколько ΠΎΡ…Ρ€Π°Π½, с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π·Π°Π΄Π°Ρ‡ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всС Ρ€Π°Π²Π½ΠΎ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ· Π΄Π΅ΠΉΡΡ‚Π²ΠΈΠΉ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ. Однако ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ срСдства программирования2) Π·Π°ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ нас ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€, ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅ ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда ΠΌΡ‹ Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ариях, Ρ‡Ρ‚ΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²Ρ‹Π±ΠΎΡ€ Π±Π΅Π·Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΈ модификациях ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π·Π°ΠΏΠ»Π°Ρ‚ΠΊΠΈ Π½Π° ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠ°Ρ… ΠΈ Ρ‚. ΠΏ.

Когда имССтся Π²Ρ‹Π±ΠΎΡ€, ΠΌΡ‹ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΡ‚ сСти Π΄Π°Π½Π½Ρ‹Ρ… ΠΊ Π±ΠΎΠ»Π΅Π΅ слоТной структурС: &—Π³Ρ€Π°Ρ„Π°ΠΌ. НСкоторыС Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ ΠΊΠ°ΠΊΠ²Π΅Ρ€ΡˆΠΈΠ½Ρ‹, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ достаточно ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ², ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ входящим Π΄ΡƒΠ³Π°ΠΌ, ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ лишь ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ выходящСй Π΄ΡƒΠ³Π΅. Для структурированности &—Π³Ρ€Π°Ρ„Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π±Ρ‹Π» ΡΠ΅Ρ‚ΡŒΡŽ, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰Π΅ΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ: имССтся ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΡ, ΡΠΎΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉΠ²Π΅Ρ€ΡˆΠΈΠ½Π΅ Π½, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ нСсколько Π΄ΡƒΠ³, -Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ (Π½), ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ лишь ΠΎΠ΄Π½Π° Π΄ΡƒΠ³Π°, Ρ‚Π°ΠΊΡƒΡŽ, Ρ‡Ρ‚ΠΎ любой ΠΏΡƒΡ‚ΡŒ, проходящий Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ, ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΠΈ Ρ‡Π΅Ρ€Π΅Π· Π²Ρ‚ΠΎΡ€ΡƒΡŽ. Π­Ρ‚ΠΎ Π½Π΅ΡƒΠ΄ΠΎΠ±ΠΎΠ²Π°Ρ€ΠΈΠΌΠΎΠ΅ тСорСтичСскоС условиС всСго лишь Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° Ρ‚ΠΎΡ‡Π½ΠΎΠΌ языкС, Ρ‡Ρ‚ΠΎΠ²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π²ΠΈΠ΄Π°, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° Ρ€ΠΈΡ. 14.2 (количСство Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹ΠΌ).

Рис. 2 Π‘Π΅Ρ‚ΡŒ охраняСмых ΠΊΠΎΠΌΠ°Π½Π΄

О Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ цикличСского структурного программирования. БСйчас сосрСдоточимся Π½Π° Ρ‚ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ структурного программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ориСнтируСтся Π½Π° Ρ†ΠΈΠΊΠ»Ρ‹ ΠΈ ΠΌΠ°ΡΡΠΈΠ²Ρ‹.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π½ΡƒΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡ‚имости структурного цикличСского программирования с рСкурсиями. ΠžΠΏΡ‹Ρ‚ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅ΡΡ‚ΡŒ Π΅Π΅ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠ²Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°, практичСски ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Π°, тСорСтичСски ΠΆΠ΅ ΠΎΠ½Π° Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° Ρ€Π°ΠΌΠΊΠΈ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΎΠΉ рСкурсии (см. ΠΊΡƒΡ€Ρ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²) ΠΈ, ΠΊΠ°ΠΊ слСдствиС, становится практичСски нСвычислимой. Π‘ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ здСсь Π½Π΅ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ впросак, ΡΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ простоС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ рСкурсивный Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°! РСкурсия ΠΈ Ρ†ΠΈΠΊΠ»Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ «Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹» !

Π”Π°Π½Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎ Π² ΠΏΠΎΠ΄Π°Π²Π»ΡΡŽΡ‰Π΅ΠΌ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв. Оно являСтся ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ для структурного программирования извСстного ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎ-социологичСского наблюдСния:

Π‘Π°ΠΌΡ‹Π΅ яростныС противорСчия Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Π»ΠΈΠ±ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π±Π»ΠΈΠ·ΠΊΠΈΠΌΠΈ сСктами, Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈ Π±ΠΎΡ€ΡŒΠ±Π΅ Π΄Π²ΡƒΡ… Ρ„Ρ€Π°ΠΊΡ†ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ сСкты.

Π›ΡŽΠ΄ΠΈ ΡΡ‚Π°Ρ€ΡˆΠ΅Π³ΠΎ поколСния Π΅Ρ‰Π΅ помнят, ΠΊΠ°ΠΊ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ оТСсточСнной Π²Ρ€Π°ΠΆΠ΄Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ китайскими ΠΈ ΡΠΎΠ²Π΅Ρ‚скими коммунистами ΠΊΠΈΡ‚Π°ΠΉΡ†Ρ‹ Π½Π΅ ΠΏΠ΅Ρ€Π΅ΡΡ‚авая повторяли, Ρ‡Ρ‚ΠΎ Ρƒ Π½ΠΈΡ… «ΠΈΠ· Π΄Π΅ΡΡΡ‚ΠΈ ΠΏΠ°Π»ΡŒΡ†Π΅Π² Π΄Π΅Π²ΡΡ‚ΡŒ — ΠΎΠ±Ρ‰ΠΈΠ΅» .

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΈΠ½ΠΎΠ³Π΄Π° Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Рассмотрим, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, схСму поиска Π²Π³Π»ΡƒΠ±ΡŒ Π½Π° Π΄Π΅Ρ€Π΅Π²Π΅.

int search (ELEMENT x)

ELEMENT y; int result;

if (good (x)) {

return id (x) }

else for (int i=0; i<100; i++)

{y=get_successor (x, i);

result=search (y);

if (result>0) return result;

}

return 0;

}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1 (html, txt)

Π—Π΄Π΅ΡΡŒ рСкурсии вмСстС с Ρ†ΠΈΠΊΠ»ΠΎΠΌ Π·Π°Π΄Π°ΡŽΡ‚ ΠΎΠ±Ρ…ΠΎΠ΄ Π΄Π΅Ρ€Π΅Π²Π° возмоТностСй, ΠΈ Π³ΠΈΠ±Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ размноТСния рСкурсивных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Π½Π΅ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚. ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° этого ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ†ΠΈΠΊΠ» Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ — всСго лишь ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠ° для рСкурсии. Π’ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠ² Ρ‚ΠΈΠΏΠ° mapcar языка LISP, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΡ… свой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΊΠΎ Π²ΡΠ΅ΠΌ Ρ‡Π»Π΅Π½Π°ΠΌ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ1) .

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ основано Π½Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий ΠΈ ΡƒΡΠ»ΠΎΠ²ΠΈΠΉ, поэтому для Π½Π΅Π³ΠΎ Π² ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ иСрархичСскоС Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ — Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ нисходящСС ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

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

Π’ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ процСссов Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ каТдая ΠΈΠ· ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ являСтся процСссом, Ρ‡Π°Ρ‰Π΅ всСго Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ ΠΈΠ»ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ людСй, Π² ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ тСхничСских систСм каТдая ΠΈΠ· ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ Π΄Π°Π΅Ρ‚ Π±Π»ΠΎΠΊ конструкции, Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ½Π° Π΄Π°Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ (Π² Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ достаточно простых случаях — ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ).

НисходящСС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ — конкрСтизация нисходящСго проСктирования для Π½ΡƒΠΆΠ΄ программирования. Оно ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ прСимущСствами.

НисходящСС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡ€ΠΎΠ΄ΠΈΠ»ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ согласованноС с Π½ΠΈΠΌ нисходящСС построСниС структур Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π½ΠΈΡΡ…одящСС построСниС структур Π΄Π°Π½Π½Ρ‹Ρ… являСтся ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΌ частным случаСм Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠΉ идСальной ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ — абстракции Π΄Π°Π½Π½Ρ‹Ρ…. Богласно парадоксу изобрСтатСля, Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ частныС случаи высокоуровнСвых ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ ΠΏΡ€ΠΈ ΡƒΠ΄Π°Ρ‡Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‚ всС характСристики умствСнных конструкций (Π² Ρ‡Π°ΡΡ‚ности, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ).

ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ΄Π½ΠΎΠΉ модСлью вычислСний, Π² Ρ‡Π°ΡΡ‚ности ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ структурноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π½Π½Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ хотя Π±Ρ‹ Π² ΡƒΡΠ»ΠΎΠ²ΠΈΡΡ… Π³Ρ€ΡƒΠ±ΠΎΠΉ эмуляции Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня, позволяСт ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ полная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ Π΅Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ характСристики.

Ни ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ способ Π°Π½Π°Π»ΠΈΠ·Π° Π»ΠΈΠ±ΠΎ синтСза Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ. НисходящСС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Ρ‚ΠΎΠΆΠ΅ Ρ‚Π°ΠΊΠΎΠ²Ρ‹ΠΌ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся. ΠŸΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ Ρ‚ΠΎΠΌΡƒ, Π² Ρ‡Π°ΡΡ‚ности, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅2) .

ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ нисходящСм структурном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‚ΠΎΠΆΠ΄Π΅ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… вСтвях Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Π° Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСсколько Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… вСтвях Π² ΠΎΠ΄Π½Ρƒ ΠΎΠ±Ρ‰ΡƒΡŽ.

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

НСдостаточный пСрСнос ΠΎΠΏΡ‹Ρ‚Π° ΠΈ Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ.

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

Π­Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ срСдств, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Ρ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ понятий. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ структурных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ примСняСтся Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ восходящСго программирования. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΊΠΎΠ³Π΄Π° строят Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ΠΌ Π·Π°Π΄Π°Ρ‡ΠΈ. Части, выдСляСмыС Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Ρ… срСдств, Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… контСкстах.

ΠŸΡ€ΠΈ создании глобального контСкста ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ всСвозмоТныС стили. НапримСр, ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΡΡ‚ΠΈΠ»Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚Π½ΠΎΠ³ΠΎ программирования. Если Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ стилСй ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡΠΌ, ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹ΠΌ структурным Π΅Π΄ΠΈΠ½ΠΈΡ†Π°ΠΌ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΎ строго, Ρ‚ΠΎ ΡΠΊΠ»Π΅ΠΊΡ‚ичСского ΠΈΡ… ΡΠΌΠ΅ΡˆΠ΅Π½ΠΈΡ Π½Π΅ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚.

Π Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚3) — это смСсь нисходящСго ΠΈ Π²ΠΎΡΡ…одящСго ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ²:

сначала свСрху Π²Π½ΠΈΠ· для выяснСния ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ²;

Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° двиТСния снизу Π²Π²Π΅Ρ€Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ понятия, ΠΎΡ„ΠΎΡ€ΠΌΠΈΠ²ΡˆΠΈΠ΅ΡΡ Ρ€Π°Π½Π΅Π΅, Π½Π° Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½Ρ‹Π΅ структуры, Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΠ΅ Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ;

Π΄Π°Π»Π΅Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° соотвСтствия, ΡƒΠ³Π»ΡƒΠ±Π»Π΅Π½ΠΈΠ΅ нисходящСй Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΈ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ понятий, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… восходящими ΠΏΡ€ΠΈΠ΅ΠΌΠ°ΠΌΠΈ.

Как Π² Π½ΠΈΡΡ…одящСм, Ρ‚Π°ΠΊ ΠΈ Π² Π²ΠΎΡΡ…одящСм ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ Π²Π°ΠΆΠ½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ согласованиС ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² управлСния ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ инструмСнтом здСсь ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ взгляд Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ со ΡΡ‚ΠΎΡ€ΠΎΠ½Ρ‹ сСтСй Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ†ΠΈΠΊΠ» появляСтся ΠΊΠ°ΠΊ рСализация послойного двиТСния ΠΏΠΎ ΡΠ΅Ρ‚ΠΈ, Π° ΠΌΠ°ΡΡΠΈΠ² — ΠΊΠ°ΠΊ прСдставлСниС слоя сСти, Ρ‚ΠΎ Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ основной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ структурой Ρ†ΠΈΠΊΠ»Π° являСтся слой сСти. НапримСр, Π² Ρ†ΠΈΠΊΠ»Π΅, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅ΠΌ числа Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ, — это структура ΠΈΠ· fib1 ΠΈ fib2. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ слой сСти, называСтся Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, Π΄ΠΈΠΊΡ‚ΡƒΠ΅ΠΌΠΎΠ³ΠΎ языком программирования ΠΈ Ρ‡Π°ΡΡ‚ΠΎ ΡΠ²Π»ΡΡŽΡ‰Π΅Π³ΠΎΡΡ ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΎΠΉ) Ρ†ΠΈΠΊΠ»Π°. Π Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ просто ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ.

Π”Π°Π»Π΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ†ΠΈΠΊΠ» Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… дСйствий, Π° Π΄Π΅ΠΉΡΡ‚вия Π΄ΠΈΠΊΡ‚ΡƒΡŽΡ‚ΡΡ свойствами Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² Ρ†ΠΈΠΊΠ»Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ‰Π΅Π΅ свойство, зависящСС ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ ΠΈΠ½Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π°. НапримСр, Π² Ρ†ΠΈΠΊΠ»Π΅ сортировки — это ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ отсортированными ΠΈ Π½Π΅ΠΎΡ‚сортированными Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ массива.

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

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° цикличСского ΠΈ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠ²Π½ΠΎΠ³ΠΎ структурного программирования с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΈ Π½Π΅Π΄Π΅Ρ‚Срминированности (Π½ΠΎ Π±Π΅Π· явного упоминания сСтСй Π΄Π°Π½Π½Ρ‹Ρ…) прСкрасно ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π° Π² ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… пособиях Алагича, Арбиба ΠΈ Π“риса,. ΠΠ°ΡΡ‚ΠΎΠ»ΡŒΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΎΠΉ программиста Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ½ΠΈΠ³Π° ΠšΠΎΡ€ΠΌΠ΅Π½Π° ΠΈ Π΄Ρ€. (ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ MIT), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ мноТСство Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ ΡΠΎ Π²ΠΊΡƒΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΏΠΎΡ€ΠΊΠΈ.

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

И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

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

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ΠΈ Π²Ρ‹Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ значСния. Π’ ΠΎΠ±Ρ‰Π΅Π΅ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ структурноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ вошло послС ΠΏΠΎΠΏΡƒΠ»ΡΡ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π²ΡˆΠ΅ΠΉ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π­. ДСйкстры, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡŽ, Π½Π΅ Π±Ρ‹Π»ΠΎ Π΄Π°ΠΆΠ΅ Π½Π°ΠΌΠ΅ΠΊΠ° Π½Π° Π΅Π³ΠΎ ограничСния. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ структурного программирования Π²Ρ‹Ρ‚Π΅ΠΊΠ°ΡŽΡ‚ ΠΊΠ°ΠΊ ΠΈΠ· ΡΠ°ΠΌΠΎΠΉ Π΅Π³ΠΎ сути, Ρ‚Π°ΠΊ ΠΈ ΠΈΠ· Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ Π‘Π΅ΠΌΠ°-Π”ΠΆΠ°ΠΊΠΎΠΏΠΈΠ½ΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ структурных ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π²Π΅Π» Π² ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ ΠΈ Ρ‚Π΅ΠΎΡ€ΠΈΡŽ Π”. ΠšΠ½ΡƒΡ‚ (ΠΎΡ‚ΠΊΠΎΠΏΠ°Π²ΡˆΠΈΠΉ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π‘Π΅ΠΌΠ°-Π”ΠΆΠ°ΠΊΠΎΠΏΠΈΠ½ΠΈ ΠΈ Ρ‡Π΅Ρ‚ΠΊΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΠ²ΡˆΠΈΠΉ ограничСния дСйкстровского структурного ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°1)), избавляСт ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΡ… нСдостатков, присущих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ΅ ДСйкстры. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ — ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ лишь Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π° Π±ΠΎΠ»Π΅Π΅ высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ структурной ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ управлСния, Π½ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ случаС Π½Π΅ Π²Ρ‹Π²ΠΎΠ΄ΡΡ‰ΠΈΠ΅ нас Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Π΄Π°Π½Π½ΠΎΠ³ΠΎ модуля.

/* ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ структурных goto. */

do {y = f (x, y) };

if (y>0) break;

x=g (x, y);

}while (x>0);

{…

{

if (All_Done) goto Success;

}

Success: Hurra; }

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2 (html, txt)

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ Π² Π½Π°ΡΡ‚оящСС врСмя Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² ΠΎΠ±Ρ‰Π΅Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½Π½Ρ‹Π΅ языки программирования. Π˜Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ½Π΅ΠΌΠ½ΠΎΠ³Ρƒ ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ°Π΅Ρ‚ ΠΈ Π² ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ курсы.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠ°Π»Π»ΠΈΠ°Ρ‚ΠΈΠ²ΠΎΠΌ. Они Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΈΠ·-Π·Π° нСобходимости Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΌΡ‹ΡΠ»ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ успСх Π»ΠΈΠ±ΠΎ Π½Π΅ΡƒΠ΄Π°Ρ‡Π° глобального процСсса ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Ρ€Π΅ΡˆΠ°Π΅ΠΌΡ‹Ρ… ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡, ΠΈ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ°Ρ Ρ€Π°Π±ΠΎΡ‚Π° ΠΈ Π½Π°Π΄ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ, ΠΈ Π½Π°Π΄ всСй ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ становится просто бСссмыслСнной. Π’ ΡΡ‚ΠΎΠΌ случаС Π½ΡƒΠΆΠ½Ρ‹ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹, Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ. Но ΠΎΠ½ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… распространСнных языках Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ лишь Π½Π° ΠΎΠ΄ΠΈΠ½ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Π²Π²Π΅Ρ€Ρ…, Π° Π΄Π°ΠΆΠ΅ тСорСтичСски этого нСдостаточно2). Π‘Ρ‚ΠΎΠΈΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ΄Π΅Π΅ΠΉ ΠΈ Π΅Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ часто проходят Π΄ΠΎΠ»Π³ΠΈΠ΅ Π³ΠΎΠ΄Ρ‹. НынС Π² ΠΎΠ±Ρ‰Π΅Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½Π½ΠΎΠΌ языкС Java Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚Π΅Π»ΠΈ Π½Π°ΠΊΠΎΠ½Π΅Ρ†-Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹.

Π•ΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ структурных ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ², извСстноС с 80-Ρ… Π³Π³. Π₯Π₯ Π²Π΅ΠΊΠ° (cΠΌ.), ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· достовСрно ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΠ²ΡˆΠ΅Π΅ создатСлям отСчСствСнной сСрии машин Π­Π»ΡŒΠ±Ρ€ΡƒΡ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΎΡΡŒ структурноС ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ (Π² Ρ‚ΠΎΠΌ числС ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚Π΅Π»ΠΈ) Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ выводят нас ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π²Ρ‹Π·ΠΎΠ²Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π˜Ρ€ΠΎΠ½ΠΈΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ чСткая ΠΈ ΠΏΠΎΠ»Π½Π°Ρ рСализация Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚Π΅Π»Π΅ΠΉ Π΅Ρ‰Π΅ Π΄ΠΎ ΠΎΡΠΎΠ·Π½Π°Π½ΠΈΡ нСобходимости Π΄Π°Π½Π½ΠΎΠ³ΠΎ срСдства ΠΈ Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ ΠΎΡΠΎΠ·Π½Π°Π½ΠΈΡ ΠΏΡ€Π΅Π΄Π΅Π»ΠΎΠ² Π΅Π³ΠΎ примСнимости Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π½Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΌ, Π³Π΄Π΅ ΠΎΠ½ΠΈ Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ (Π² ΡΠ·Ρ‹ΠΊΠ΅ LISP). Π’ Π½Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ»Π½ΠΎΠΏΡ€Π°Π²Π½Ρ‹ΠΌΠΈ значСниями, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. Π‘Π°ΠΌΡ‹ΠΉ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ случай нСкоррСктности (ΠΏΡ€Π°Π²Π΄Π°, Π²Ρ‹Π»Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ систСмой обнаруТСния динамичСских ошибок Common Lisp), ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ созданной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅ΠΌ Π±Π»ΠΎΠΊ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Π²ΡˆΠΈΠΉ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ создания ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°Π²ΡˆΠΈΠΉ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° Π΅Π΅ Π²Ρ‹Π·Π²Π°Π»ΠΈ. НавСрняка ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½Π°Ρ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ Π½Π° Π½Π΅ΠΏΠΎΠ½ΡΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ с Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚Слями, Π½ΠΎ Π² ΡΠΎΠΎΡ‚вСтствии с ΠΎΠ±Ρ‰Π΅Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½Π½Ρ‹ΠΌ «ΠΏΠΎΠ·ΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌ» ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΠ΅ΠΌ Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Π»ΠΈ внимания Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„Π΅Π½ΠΎΠΌΠ΅Π½.

Π•ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π°, Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ. Π’ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… языках программирования часто Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ΅ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, Π½Π΅ ΡƒΠ΄Π°Π΅Ρ‚ся сразу ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅, ΠΈ, Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎΠΉ глупости ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π±Π΅Π·Π²Ρ€Π΅Π΄Π½ΠΎΠ΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π΅Ρ‰Π΅ Π² Algol 60 понятиС условного выраТСния, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ

if x=0 then sin (y) else tan (y)

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

Π­Ρ‚Ρƒ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ пСрСнСсти Π½Π° ΡΠ·Ρ‹ΠΊ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² ΡΠ·Ρ‹ΠΊΠ΅ Алгол 68. На ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ ΠΎΡ‡Π΅Π½ΡŒ красиво. НапримСр, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

if x>0 then a1 else a2 fi [if y>0 then j else i fi]: =

if z>0 then sin (u) else tan (u) fi

Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π΅ΠΉ ΠΈ ΠΊΡ€Π°ΡΠΈΠ²Π΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ условных ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ придСтся Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Pascal ΠΈΠ»ΠΈ C++. Но ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡ Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ значСния оказалась Π² ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠΈ ΠΈ Ρ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ присваивания, ΠΈ Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚Π½Ρ‹ΠΌΠΈ вычислСниями. НапримСр, согласно сСмантикС Алгола 68, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ запись

(x: =3, Ρƒ: =x+y, z: =x+y)

являСтся Π±Π»ΠΎΠΊΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ всС Ρ‚Ρ€ΠΈ присваивания ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ совмСстно. Но ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ вычислСний Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π΅Π½. ΠžΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ значСния Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ся, эта ΠΆΠ΅ конструкция являСтся ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ массива ΠΈΠ· Ρ‚Ρ€Π΅Ρ… элСмСнтов Π»ΠΈΠ±ΠΎ записи с Ρ‚рСмя полями.

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

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ модСлирования SADT

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ SADT Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Дугласом Россом. На Π΅Π΅ ΠΎΡΠ½ΠΎΠ²Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π°, Π² Ρ‡Π°ΡΡ‚ности, извСстная мСтодология IDEF0 (Icam DEFinition), которая являСтся основной Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ICAM (Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ), ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΏΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π΅ Π’Π’Π‘ БША.

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ SADT прСдставляСт собой ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΏΡ€Π°Π²ΠΈΠ» ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для построСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ модСль SADT ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ структуру ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Ρ‚. Π΅. ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΈΠΌ Π΄Π΅ΠΉΡΡ‚вия ΠΈ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ этими дСйствиями. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ элСмСнты этой ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… концСпциях:

графичСскоС прСдставлСниС Π±Π»ΠΎΡ‡Π½ΠΎΠ³ΠΎ модСлирования. Π“Ρ€Π°Ρ„ΠΈΠΊΠ° Π±Π»ΠΎΠΊΠΎΠ² ΠΈ Π΄ΡƒΠ³ SADT-Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² Π²ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠ°, Π° ΠΈΠ½Ρ‚СрфСйсы Π²Ρ…ΠΎΠ΄Π°/Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄ΡƒΠ³Π°ΠΌΠΈ, соотвСтствСнно входящими Π² Π±Π»ΠΎΠΊ ΠΈ Π²Ρ‹Ρ…одящими ΠΈΠ· Π½Π΅Π³ΠΎ. ВзаимодСйствиС Π±Π»ΠΎΠΊΠΎΠ² Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ посрСдством интСрфСйсных Π΄ΡƒΠ³, Π²Ρ‹Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΡ… «ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚, ΠΊΠΎΠ³Π΄Π° ΠΈ ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ся;

ΡΡ‚Ρ€ΠΎΠ³ΠΎΡΡ‚ΡŒ ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ» SADT Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ достаточной строгости ΠΈ Ρ‚очности, Π½Π΅ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя Ρ‡Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½Ρ‹Ρ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ Π½Π° Π΄Π΅ΠΉΡΡ‚вия Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠ°. ΠŸΡ€Π°Π²ΠΈΠ»Π° SADT Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚:

ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ количСства Π±Π»ΠΎΠΊΠΎΠ² Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ (ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ 3−6 Π±Π»ΠΎΠΊΠΎΠ²);

ΡΠ²ΡΠ·Π½ΠΎΡΡ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ (Π½ΠΎΠΌΠ΅Ρ€Π° Π±Π»ΠΎΠΊΠΎΠ²);

ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠΊ ΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΉ (отсутствиС ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΡ…ΡΡ ΠΈΠΌΠ΅Π½);

синтаксичСскиС ΠΏΡ€Π°Π²ΠΈΠ»Π° для Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ (Π±Π»ΠΎΠΊΠΎΠ² ΠΈ Π΄ΡƒΠ³);

Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΉ (ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ опрСдСлСния Ρ€ΠΎΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…).

ΠΎΡ‚Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚. Π΅. ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ влияния ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ структуры Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ модСль.

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ SADT ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для модСлирования ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ ΠΊΡ€ΡƒΠ³Π° систСм ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π° Π·Π°Ρ‚Π΅ΠΌ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСмы, которая удовлСтворяСт этим трСбованиям ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Для ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… систСм SADT ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована для Π°Π½Π°Π»ΠΈΠ·Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, выполняСмых систСмой, Π° Ρ‚Π°ΠΊΠΆΠ΅ для указания ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ², посрСдством ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ½ΠΈ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ΡΡ Бостав Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ примСнСния ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ SADT являСтся модСль, которая состоит ΠΈΠ· Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ, Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ² тСкстов ΠΈ Π³Π»ΠΎΡΡΠ°Ρ€ΠΈΡ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ссылки Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ — Π³Π»Π°Π²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ΄Π΅Π»ΠΈ, всС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π˜Π‘ ΠΈ ΠΈΠ½Ρ‚СрфСйсы Π½Π° Π½ΠΈΡ… прСдставлСны ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΠΈ ΠΈ Π΄ΡƒΠ³ΠΈ. ΠœΠ΅ΡΡ‚ΠΎ соСдинСния Π΄ΡƒΠ³ΠΈ с Π±Π»ΠΎΠΊΠΎΠΌ опрСдСляСт Ρ‚ΠΈΠΏ интСрфСйса. Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ информация Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Π±Π»ΠΎΠΊ свСрху, Π² Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΡ ΠΊΠ°ΠΊ информация, которая подвСргаСтся ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, ΠΏΠΎΠΊΠ°Π·Π°Π½Π° с Π»Π΅Π²ΠΎΠΉ стороны Π±Π»ΠΎΠΊΠ°, Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ с ΠΏΡ€Π°Π²ΠΎΠΉ стороны. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ (Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΈΠ»ΠΈ автоматизированная систСма), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ осущСствляСт ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, прСдставляСтся Π΄ΡƒΠ³ΠΎΠΉ, входящСй Π² Π±Π»ΠΎΠΊ снизу (см. рисунок).

Одной ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ… особСнностСй ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ SADT являСтся постСпСнноС Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ всС Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ создания Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΡ… модСль.

На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅, Π³Π΄Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΈΡ… Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·ΠΈ, ΠΏΠΎΠΊΠ°Π·Π°Π½Π° структура SADT-ΠΌΠΎΠ΄Π΅Π»ΠΈ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅. КаТдая Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ «Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ строСниС» Π±Π»ΠΎΠΊΠ° Π½Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅.

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

Π—Π°Ρ‚Π΅ΠΌ Π±Π»ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт систСму Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ модуля, дСтализируСтся Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π±Π»ΠΎΠΊΠΎΠ², соСдинСнных интСрфСйсными Π΄ΡƒΠ³Π°ΠΌΠΈ. Π­Ρ‚ΠΈ Π±Π»ΠΎΠΊΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ основныС ΠΏΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ исходной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Данная дСкомпозиция выявляСт ΠΏΠΎΠ»Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΏΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, каТдая ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… прСдставлСна ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊ, Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ интСрфСйсными Π΄ΡƒΠ³Π°ΠΌΠΈ. КаТдая ΠΈΠ· ΡΡ‚ΠΈΡ… ΠΏΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ для Π±ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ прСдставлСния.

Π’ΠΎ Π²ΡΠ΅Ρ… случаях каТдая подфункция ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ входят Π² ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, модСль Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ элСмСнты, Ρ‚. Π΅., ΠΊΠ°ΠΊ ΡƒΠΆΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π»ΠΎΡΡŒ, Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π±Π»ΠΎΠΊ ΠΈ Π΅Π³ΠΎ интСрфСйсы ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ контСкст. К Π½Π΅ΠΌΡƒ нСльзя Π½ΠΈΡ‡Π΅Π³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, ΠΈ ΠΈΠ· Π½Π΅Π³ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΎ.

МодСль SADT прСдставляСт собой ΡΠ΅Ρ€ΠΈΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ с ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ, Ρ€Π°Π·Π±ΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… слоТный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π° ΡΠΎΡΡ‚Π°Π²Π½Ρ‹Π΅ части, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдставлСны Π² Π²ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠΎΠ². Π”Π΅Ρ‚Π°Π»ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π² Π²ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠΎΠ² Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°Ρ…. КаТдая Π΄Π΅Ρ‚Π°Π»ΡŒΠ½Π°Ρ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° являСтся Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠ΅ΠΉ Π±Π»ΠΎΠΊΠ° ΠΈΠ· Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰Π΅ΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹. На ΠΊΠ°ΠΆΠ΄ΠΎΠΌ шагС Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π±ΠΎΠ»Π΅Π΅ общая Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° называСтся Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ для Π±ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹.

Π”ΡƒΠ³ΠΈ, входящиС Π² Π±Π»ΠΎΠΊ ΠΈ Π²Ρ‹Ρ…одящиС ΠΈΠ· Π½Π΅Π³ΠΎ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π΅ΠΌΠΈ ΠΆΠ΅ самыми, Ρ‡Ρ‚ΠΎ ΠΈ Π΄ΡƒΠ³ΠΈ, входящиС Π² Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ уровня ΠΈ Π²Ρ‹Ρ…одящиС ΠΈΠ· Π½Π΅Π΅, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊ ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ Ρ‡Π°ΡΡ‚ΡŒ систСмы.

На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… рисунках прСдставлСны Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ выполнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π΄ΡƒΠ³ с Π±Π»ΠΎΠΊΠ°ΠΌΠΈ.

НСкоторыС Π΄ΡƒΠ³ΠΈ присоСдинСны ΠΊ Π±Π»ΠΎΠΊΠ°ΠΌ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΠ±ΠΎΠΈΠΌΠΈ ΠΊΠΎΠ½Ρ†Π°ΠΌΠΈ, Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΆΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½Π΅Ρ† остаСтся нСприсоСдинСнным. НСприсоСдинСнныС Π΄ΡƒΠ³ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π²Ρ…ΠΎΠ΄Π°ΠΌ, управлСниям ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°. Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŒ этих ΠΏΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Ρ… Π΄ΡƒΠ³ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅. НСприсоСдинСнныС ΠΊΠΎΠ½Ρ†Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΡƒΠ³Π°ΠΌ Π½Π° ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅. ВсС Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ Π΄ΡƒΠ³ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒΡΡ Π½Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° Π±Ρ‹Π»Π° ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈ Π½Π΅ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ²ΠΎΠΉ.

На SADT-Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°Ρ… Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ явно Π½ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π½ΠΈ Π²Ρ€Π΅ΠΌΡ. ΠžΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ связи, ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ процСссы ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ (ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ) Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΡƒΠ³. ΠžΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ связи ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π², Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠΉ, исправлСний ΠΈ Ρ‚. Π΄. (рисунок Π½ΠΈΠΆΠ΅).

Как Π±Ρ‹Π»ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ (Π΄ΡƒΠ³ΠΈ с Π½ΠΈΠΆΠ½Π΅ΠΉ стороны) ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ срСдства, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… осущСствляСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΈΠ»ΠΈ Π»ΡŽΠ±Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ устройством, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ (рисунок Π½ΠΈΠΆΠ΅).

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π±Π»ΠΎΠΊ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ свой Π½ΠΎΠΌΠ΅Ρ€. Π‘Π»ΠΎΠΊ любой Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅ описан Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠΎΠΉ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ уровня, которая, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ числа Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, формируСтся иСрархия Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ любой Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊΠ° Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π½ΠΎΠΌΠ΅Ρ€Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ. НапримСр, А21 являСтся Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠΎΠΉ, которая Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π±Π»ΠΎΠΊ 1 Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ А2. Аналогично, А2 Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π±Π»ΠΎΠΊ 2 Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ А0, которая являСтся самой Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ. На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ.

Π’ΠΈΠΏΡ‹ связСй ΠΌΠ΅ΠΆΠ΄Ρƒ функциями. Одним ΠΈΠ· Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π˜Π‘ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ SADT являСтся точная ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠΎΠ² связСй ΠΌΠ΅ΠΆΠ΄Ρƒ функциями. Π Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ сСмь Ρ‚ΠΈΠΏΠΎΠ² связывания:

Вип связи

ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Π·Π½Π°Ρ‡ΠΈΠΌΠΎΡΡ‚ΡŒ

Блучайная

ЛогичСская

ВрСмСнная

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Π°Ρ

ΠšΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ

НиТС ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚ΠΈΠΏ связи ΠΊΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΈ ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΈΠ· SADT.

(0) Π’ΠΈΠΏ случайной связности: Π½Π°ΠΈΠΌΠ΅Π½Π΅Π΅ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ.

Блучайная ΡΠ²ΡΠ·Π½ΠΎΡΡ‚ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° конкрСтная связь ΠΌΠ΅ΠΆΠ΄Ρƒ функциями ΠΌΠ°Π»Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ отсутствуСт. Π­Ρ‚ΠΎ относится ΠΊ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΈΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° SADT-Π΄ΡƒΠ³Π°Ρ… Π² ΠΎΠ΄Π½ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΌΠ°Π»ΡƒΡŽ связь Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. ΠšΡ€Π°ΠΉΠ½ΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ этого случая ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅.

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

(2) Π’ΠΈΠΏ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ связности. БвязанныС ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ элСмСнты Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ вслСдствиС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, связанныС Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ, Π° Π½Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

(3) Π’ΠΈΠΏ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠΉ связности. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎ-связанныС элСмСнты ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ сгруппированными вмСстС вслСдствиС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ части Ρ†ΠΈΠΊΠ»Π° ΠΈΠ»ΠΈ процСсса. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎ-связанной Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π½Π° cΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС.

(4) Π’ΠΈΠΏ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ связности. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ связи, ΠΊΠΎΠ³Π΄Π° Π±Π»ΠΎΠΊΠΈ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ вслСдствиС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ/ΠΈΠ»ΠΈ производят ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ (см. рисунок).

(5) Π’ΠΈΠΏ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ связности. На Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°Ρ…, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ связи, Π²Ρ‹Ρ…ΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ слуТит Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Бвязь ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ являСтся Π±ΠΎΠ»Π΅Π΅ тСсной, Ρ‡Π΅ΠΌ Π½Π° Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½Π½Ρ‹Ρ… Π²Ρ‹ΡˆΠ΅ уровнях связок, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π½ΠΎ-слСдствСнныС зависимости (см. рисунок).

(6) Π’ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ связности. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ ΡΠ²ΡΠ·Π½ΠΎΡΡ‚ΡŒ, ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ ΠΏΠΎΠ»Π½ΠΎΠΉ зависимости ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°, которая являСтся чисто Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ, Π½Π΅ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Ρ‡ΡƒΠΆΠ΅Ρ€ΠΎΠ΄Π½Ρ‹Ρ… элСмСнтов, относящихся ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ слабому Ρ‚ΠΈΠΏΡƒ связности. Одним ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² опрСдСлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ-связанных Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ являСтся рассмотрСниС Π΄Π²ΡƒΡ… Π±Π»ΠΎΠΊΠΎΠ², связанных Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ Π΄ΡƒΠ³ΠΈ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ «Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ ΡΠ²ΡΠ·Π½ΠΎΡΡ‚ΡŒ» .

Π’ ΠΌΠ°Ρ‚СматичСских Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ условиС для ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ связности, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅, ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

C = g (B) = g (f (A))

НиТС Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ прСдставлСны всС Ρ‚ΠΈΠΏΡ‹ связСй, рассмотрСнныС Π²Ρ‹ΡˆΠ΅. Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΡƒΡ€ΠΎΠ²Π½ΠΈ 4−6 ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ Ρ‚ΠΈΠΏΡ‹ связностСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ ваТнСйшими для получСния Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ качСства

Π—Π½Π°Ρ‡ΠΈΠΌΠΎΡΡ‚ΡŒ

Π’ΠΈΠΏ связности

Для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Для Π΄Π°Π½Π½Ρ‹Ρ…

Блучайная

Блучайная

Блучайная

ЛогичСская

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ мноТСства ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠ° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС Π²Ρ…ΠΎΠ΄Ρ‹»)

Π”Π°Π½Π½Ρ‹Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ мноТСства ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠ°

ВрСмСнная

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ»)

Π”Π°Π½Π½Ρ‹Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² ΠΊΠ°ΠΊΠΎΠΌ-Π»ΠΈΠ±ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΌ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π΅

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Π°Ρ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ Ρ„Π°Π·Π΅ ΠΈΠ»ΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ компилятора»)

Π”Π°Π½Π½Ρ‹Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ Ρ„Π°Π·Ρ‹ ΠΈΠ»ΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ

ΠšΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Π½Π°Ρ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹Π΅

Π”Π°Π½Π½Ρ‹Π΅, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ воздСйствуСт ΠΎΠ΄Π½Π° ΠΈ Ρ‚Π° ΠΆΠ΅ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ прСобразования ΠΎΠ΄Π½ΠΈΡ… ΠΈ Ρ‚Π΅Ρ… ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…

Π”Π°Π½Π½Ρ‹Π΅, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ функциями

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌΡ‹Π΅ для выполнСния ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π”Π°Π½Π½Ρ‹Π΅, связанныС с ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ

ΠœΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… (процСссов)

Π’Π½Π΅ΡˆΠ½ΠΈΠ΅ сущности

БистСмы ΠΈ ΠΏΠΎΠ΄ΡΠΈΡΡ‚Π΅ΠΌΡ‹

ΠŸΡ€ΠΎΡ†Π΅ΡΡΡ‹

НакопитСли Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΠΎΡ‚ΠΎΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…

Π’ ΠΎΡΠ½ΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ (ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ Gane/Sarson) Π»Π΅ΠΆΠΈΡ‚ построСниС ΠΌΠΎΠ΄Π΅Π»ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ ИБ — ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ ΠΈΠ»ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ. Π’ ΡΠΎΠΎΡ‚вСтствии с ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ модСль систСмы опрСдСляСтся ΠΊΠ°ΠΊ иСрархия Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… (Π”ΠŸΠ” ΠΈΠ»ΠΈ DFD), ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΡ… асинхронный процСсс прСобразования ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ Π΅Π΅ Π²Π²ΠΎΠ΄Π° Π² ΡΠΈΡΡ‚Π΅ΠΌΡƒ Π΄ΠΎ Π²Ρ‹Π΄Π°Ρ‡ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π²Π΅Ρ€Ρ…Π½ΠΈΡ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ (контСкстныС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹) ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ основныС процСссы ΠΈΠ»ΠΈ подсистСмы Π˜Π‘ с Π²Π½Π΅ΡˆΠ½ΠΈΠΌΠΈ Π²Ρ…ΠΎΠ΄Π°ΠΌΠΈ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌΠΈ. Они Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ уровня. Вакая дСкомпозиция продолТаСтся, создавая ΠΌΠ½ΠΎΠ³ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ, Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ достигнут Ρ‚Π°ΠΊΠΎΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ процСсс становятся элСмСнтарными ΠΈ Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π΄Π°Π»Π΅Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (внСшниС сущности) ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°ΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ (ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…), пСрСносящиС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΊ ΠΏΠΎΠ΄ΡΠΈΡΡ‚Π΅ΠΌΠ°ΠΌ ΠΈΠ»ΠΈ процСссам. Π’Π΅ Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ пСрСносят ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ процСссам ΠΈΠ»ΠΈ подсистСмам, накопитСлям Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ внСшним сущностям — потрСбитСлям ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, основными ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΡΠ²Π»ΡΡŽΡ‚ΡΡ:

внСшниС сущности;

систСмы/подсистСмы;

процСссы;

Π½Π°ΠΊΠΎΠΏΠΈΡ‚Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…;

ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

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

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