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

РСшСниС транспортной Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²

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

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

РСшСниС транспортной Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ² (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

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

1.1 ВрСбования ΠΊ ΡΠΈΡΡ‚Π΅ΠΌΠ΅ ΠΈ Π΅Π΅ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅.

1.2 ВрСбования ΠΊ Ρ„ункциям, выполняСмым систСмой.

1.3 ВрСбования ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ.

1.4 ВрСбования ΠΊ Ρ‚СхничСскому ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ.

1.6 ВрСбования ΠΊ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΈ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

2. Основная Ρ‡Π°ΡΡ‚ΡŒ.

2.1 ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ модСль.

2.3 ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ.

2.3 Бтруктурная схСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

2.4 Π‘Ρ…Π΅ΠΌΠ° взаимодСйствия ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ.

3. Руководство программисту.

4 Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ.

4.1 ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния.

4.2 Π Π°Π±ΠΎΡ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ.

4.3 НаиболСС вСроятныС ошибки Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, А Π’Скст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π‘ Π€ΠΎΡ€ΠΌΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π’ Π”иск с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π”Π°Π½Π½Ρ‹ΠΉ курсовой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π½Π° Ρ‚Π΅ΠΌΡƒ «Π Π΅ΡˆΠ΅Π½ΠΈΠ΅ транспортной Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²».

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

ЦСлью курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° являСтся рСализация Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ транспортной Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ² Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ срСдствами срСды программирования Delphi.

Для достиТСния поставлСнной Ρ†Π΅Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π·Π°Π΄Π°Ρ‡:

1) ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ тСорСтичСского ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹;

2) рассмотрСниС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²;

3) созданиС ΠŸΠŸ;

4) описаниС создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

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

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

К ΠΎΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ характСристикам Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, уточняСмых Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ постановки, относят:

1) Ρ†Π΅Π»ΡŒ ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ, Π΅Ρ‘ ΠΌΠ΅ΡΡ‚ΠΎ ΠΈ ΡΠ²ΡΠ·ΡŒ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ: Ρ†Π΅Π»ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° являСтся автоматичСскоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ транспортных Π·Π°Π΄Π°Ρ‡ «ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²»;

2) условия Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ срСдств Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ:

— ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€: AMD Turion™ II Dual-Core M500 2.20 GHz ΠΈ Π²Ρ‹ΡˆΠ΅;

— ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΡ‘ΠΌ физичСской памяти: 512,00 ΠœΠ‘ ΠΈ Π²Ρ‹ΡˆΠ΅;

— Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ ΠΏΠ°ΠΌΡΡ‚ΡŒ: 2,00 Π“Π‘;

— ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Microsoft Windows XP / Seven;

— Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠ°Ρ€Ρ‚Π° 216 Мб;

— ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°;

— ΠΌΡ‹ΡˆΡŒ;

3) содСрТаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ: Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° коррСктности Π΄Π°Π½Π½Ρ‹Ρ…, сохранСниС;

4) Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎΡΡ‚ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ: ΠΏΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ;

5) ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΡ€ΠΎΠΊΠ°ΠΌ ΠΈ Ρ‚очности Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ: Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ происходит сразу послС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ запроса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ;

6) источники Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ: Ρ†Π΅Π½Ρ‹ Π½Π° ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΊΠΈ Π³Ρ€ΡƒΠ·ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ запасы ΠΈ ΠΏΠΎΡ‚рСбности ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»Π΅ΠΉ;

7) состав ΠΈ Ρ„ΠΎΡ€ΠΌΠ° прСдставлСния Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ: Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ являСтся Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΠΎΡ€Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΎΠΊ, расчСт Π·Π°Ρ‚Ρ€Π°Ρ‚ ΠΈ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ Π·Π°Ρ‚Ρ€Π°Ρ‚ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΎΠΊ с ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΠ»Π°Π½ΠΎΠΌ;

8) ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ: ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° прСдназначаСтся для использования Π΅Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слями, Π½ΡƒΠΆΠ΄Π°ΡŽΡ‰ΠΈΠΌΠΈΡΡ Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° Π·Π°Π΄Π°Ρ‡.

1.1 ВрСбования ΠΊ ΡΠΈΡΡ‚Π΅ΠΌΠ΅ ΠΈ Π΅Π΅ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅

Для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния:

опСрационная систСма Windows 7;

Borland Delphi 7.0.

Для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ установлСны русскоязычныС ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹.

1.2 ВрСбования ΠΊ Ρ„ункциям, выполняСмым систСмой

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ осущСствляСт систСма, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ»:

— ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ систСмы;

— ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Π΅Π·ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠΉ ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ своих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ;

— ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° стандартов Ρ‚ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°;

— ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…;

Π­Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Π΅ΠΌΡƒ Ρ€Π°Π±ΠΎΡ‚Ρƒ быстро ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок.

1.3 ВрСбования ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ

Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ трСбования:

— ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Microsoft Windows XP / Seven;

— ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€ сСмСйства Intel ΠΈΠ»ΠΈ AMD с Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частотой ΠΎΡ‚ 1 Π“Π“Ρ†;

— Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠ°Ρ€Ρ‚Π° 216 Мб;

— ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ мСсто Π½Π° ΠΆΠ΅ΡΡ‚ΠΊΠΎΠΌ дискС Π±ΠΎΠ»Π΅Π΅ 10 Мб.

1.4 ВрСбования ΠΊ Ρ‚СхничСскому ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ

Для использования Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ тСхничСскоС обСспСчСниС:

ΠžΠ—Π£ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 512 Мб;

ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°;

ΠΌΡ‹ΡˆΡŒ;

ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€.

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

ВсС надписи экранных Ρ„ΠΎΡ€ΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ сообщСния, Π²Ρ‹Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ (ΠΊΡ€ΠΎΠΌΠ΅ систСмных сообщСний) Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π½Π° Ρ€ΡƒΡΡΠΊΠΎΠΌ языкС.

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

Π­ΠΊΡ€Π°Π½Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΡƒΠ½ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ:

всС экранныС Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ Π² Π΅Π΄ΠΈΠ½ΠΎΠΌ графичСском Π΄ΠΈΠ·Π°ΠΉΠ½Π΅, с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ располоТСниСм основных элСмСнтов управлСния ΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ;

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

внСшнСС ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ сходных элСмСнтов интСрфСйса (рСакция Π½Π° Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅ указатСля «ΠΌΡ‹ΡˆΠΈ», ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ фокуса, Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ) Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ для ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… элСмСнтов.

1.6 ВрСбования ΠΊ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΈ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

Настоящая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ ошибок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Ρ€Π°Π·Π΄Π΅Π» справки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π² ΡΠ΅Π±Π΅ ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅.

ΠžΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±Ρ‹Π»ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ появлСниС всСх Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ошибок.

НиТС Π΄Π°Π½ ряд Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠΏΡ€ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΌ появлСнии ошибок.

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

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

2

2. Основная Ρ‡Π°ΡΡ‚ΡŒ

2.1 ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ модСль

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ модСль — это способ описания Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠΉ.

ситуации (Π·Π°Π΄Π°Ρ‡ΠΈ) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ матСматичСского языка.

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

Π’Π°Π±Π»ΠΈΡ†Π° 1- ΠžΠ±Ρ‰ΠΈΠΉ Π²ΠΈΠ΄ транспортной Π·Π°Π΄Π°Ρ‡ΠΈ.

ΠŸΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊΠΈ.

ΠŸΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ.

Запасы Π³Ρ€ΡƒΠ·Π°.

Π’1

Π’2

Π’m

А1

c11

c12

c1m

a1

x11

x12

x1m

А2

c21

c22

c2m

a2

x21

x22

x2m

Аn

cn1

cn2

cnm

an

xn1

xn2

xnm

ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ Π² Π³Ρ€ΡƒΠ·Π΅.

b1

b2

bm

Π³Π΄Π΅ Аi — поставщики Π³Ρ€ΡƒΠ·Π° (i=).

Bj — ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π³Ρ€ΡƒΠ·Π° (j=).

ai — запасы Π³Ρ€ΡƒΠ·Π° (i=).

bJ — ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π² Π³Ρ€ΡƒΠ·Π΅ (j=).

cij — ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ (Ρ‚Π°Ρ€ΠΈΡ„) ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΊΠΈ (i=, j=).

xij — количСство распрСдСлСнного Ρ‚ΠΎΠ²Π°Ρ€Π° ΠΎΡ‚ i-Π³ΠΎ поставщика j-ΠΌΡƒ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŽ (i=, j=).

Если Π² Ρ‚ранспортной Π·Π°Π΄Π°Ρ‡Π΅ выполняСтся условиС Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹ (1), Ρ‚ΠΎ Ρ‚ранспортная Π·Π°Π΄Π°Ρ‡Π° называСтся Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ, ΠΈΠ½Π°Ρ‡Π΅ — ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ.

Для написания ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ всС ограничСния ΠΈ Ρ†Π΅Π»Π΅Π²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ матСматичСских ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ (Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹ 2, 3, 4, 5 ΠΈ 6).

(i=);

(j=);

xij? 0 (i=;j=);

.

ΠœΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ отыскания Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° (ΠΎΠΏΠΎΡ€Π½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ) для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ транспортной Π·Π°Π΄Π°Ρ‡ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ:

1. ΠΌΠ΅Ρ‚ΠΎΠ΄ «ΡΠ΅Π²Π΅Ρ€ΠΎ-Π·Π°ΠΏΠ°Π΄Π½ΠΎΠ³ΠΎ ΡƒΠ³Π»Π°»;

2. ΠΌΠ΅Ρ‚ΠΎΠ΄ минимального элСмСнта;

3. ΠΌΠ΅Ρ‚ΠΎΠ΄ ЀогСля.

Для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠΏΠΎΡ€Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° транспортной Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ².

2.3 ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ² являСтся ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ симплСкс-ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ программирования ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Ρ‚ранспортной Π·Π°Π΄Π°Ρ‡Π΅. Он ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚, ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡΡΡŒ ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ допустимого Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π° ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ число ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ.

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

Π’Π°Π±Π»ΠΈΡ†Π° для ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ² (Ρ‚Π°Π±Π»ΠΈΡ†Π° 2) ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

Π’Π°Π±Π»ΠΈΡ†Π° 2 — Π’ΠΈΠ΄ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ².

B1

Bj

… Bn

U.

A1

U1

Aj

Cij

Xij

Ui

Am

Um

v.

v1

vj

… vn

Z.

КаТдая ячСйка (i; j) Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ†Π΅Π½Π΅ (Π‘ij) ΠΈ ΠΎ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΈΠΌΠΎΠ³ΠΎ Ρ‚ΠΎΠ²Π°Ρ€Π° (Xij). Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠ»Π΅Ρ‚ΠΎΠΊ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ базисными, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ — нСбазисными (ΠΈΠ»ΠΈ свободными).

Алгоритм Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

1. Π—Π°ΠΌΠΊΠ½ΡƒΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ, Ссли ΠΎΠ½Π° Π½Π΅ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚Π°. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° ΡˆΠ°Π³ 2.

2. ΠΠ°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° ΡˆΠ°Π³ 3.

3. Π Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π°Π½ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΎΠΊ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ сСвСро-Π·Π°ΠΏΠ°Π΄Π½ΠΎΠ³ΠΎ ΡƒΠ³Π»Π°) ΠΈ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ базисныС ΠΊΠ»Π΅Ρ‚ΠΊΠΈ. Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° ΡˆΠ°Π³ 4.

4. Π Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ значСния ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ². ΠŸΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ u1 = 0 (ΠΈΠ»ΠΈ Π»ΡŽΠ±ΠΎΠΌΡƒ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ числу). ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Ρ‹ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ базисных ΠΊΠ»Π΅Ρ‚ΠΎΠΊ, исходя ΠΈΠ· ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΡ ui + vj = cij. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° ΡˆΠ°Π³ 5.

5. Для свободных ΠΊΠ»Π΅Ρ‚ΠΎΠΊ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΡ†Π΅Π½ΠΊΠΈ sij = cij — vi — vj. Если всС sij > 0, Ρ‚ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° ΡˆΠ°Π³ 5. Π˜Π½Π°Ρ‡Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ шаг 6.

6. Из Π½Π΅Π±Π°Π·ΠΈΡΠ½Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΎΠΊ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚Ρƒ, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΡ†Π΅Π½ΠΊΠ° sij минимальна ΠΈ Π΄Π»Ρ Π½Π΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ:

— ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ†ΠΈΠΊΠ» для этой ΠΊΠ»Π΅Ρ‚ΠΊΠΈ. Π¦ΠΈΠΊΠ» — это замкнутая ломаная линия, которая Ρ‡Π΅Ρ€Π΅Π΄ΡƒΠ΅Ρ‚ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ направлСния ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ Π±Π°Π·ΠΈΡΠ½Ρ‹ΠΌ ΠΊΠ»Π΅Ρ‚ΠΊΠ°ΠΌ. Π’ ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ»Π΅Ρ‚ΠΊΠ΅ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ «+ «ΠΈ Π΄Π°Π»Π΅Π΅ ΠΏΠΎ Ρ†ΠΈΠΊΠ»Ρƒ Ρ€Π°ΡΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, чСрСдуя, «+ «ΠΈ «- «;

— Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π»= min{Xij: «-"}. ΠšΠ»Π΅Ρ‚ΠΊΡƒ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ достигаСтся этот ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· Π±Π°Π·ΠΈΡΠ° (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ), Π° ΠΊΠ»Π΅Ρ‚ΠΊΡƒ (i; j) (Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ минимальная ΠΎΡ†Π΅Π½ΠΊΠ° sij) ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ базисной;

— Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, с ΠΏΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Π°Π½Π½Ρ‹ΠΌ ΠΏΠ»Π°Π½ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΎΠΊ: для ΠΊΠ»Π΅Ρ‚ΠΎΠΊ с «+ «ΠΏΡ€ΠΈΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊ Xij Π° Π΄Π»Ρ ΠΊΠ»Π΅Ρ‚ΠΎΠΊ с «- «— Π²Ρ‹Ρ‡Π΅ΡΡ‚ΡŒ. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ»Π΅Ρ‚ΠΊΠΈ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΈ. ΠŸΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ†Π΅Π»Π΅Π²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ: z? = z + min Sij* Π»;

— ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° ΡˆΠ°Π³ 4.

7. ΠšΠΎΠ½Π΅Ρ† Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€. ΠžΡ‚ Ρ‚Ρ€Π΅Ρ… поставщиков A1, A2 ΠΈ A3 Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π²Π΅Π·Ρ‚ΠΈ Π½Π΅ΠΊΠΈΠΉ ΠΎΠ΄Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹ΠΉ Π³Ρ€ΡƒΠ· Ρ‚Ρ€Π΅ΠΌ потрСбитСлям B1, B2, B3. Π˜Π·Π²Π΅ΡΡ‚Π½Ρ‹ запасы Π³Ρ€ΡƒΠ·Π° поставщиков {a1, a2, a3} ΠΈ ΠΏΠΎΡ‚рСбности потрСбитСля {b1, b2, b3,}. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, извСстна ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΊΠΈ cij ΠΎΡ‚ Π»ΡŽΠ±ΠΎΠ³ΠΎ поставщика Ai ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŽ Bj — эти стоимости Π·Π°Π΄Π°Π½Ρ‹ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π‘ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΠΈ 3×3. ВрСбуСтся ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠ»Π°Π½ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΊΠΈ Π³Ρ€ΡƒΠ·Π° ΠΎΡ‚ ΠΏΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊΠΎΠ² ΠΊ ΠΏΠΎΡ‚рСбитСлям, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ суммарная ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΊΠΈ Π±Ρ‹Π»Π° Π±Ρ‹ минимальной.

Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ доставки Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ Π³Ρ€ΡƒΠ·Π° ΠΈΠ· ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° отправлСния Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ назначСния Π·Π°Π΄Π°Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ Ρ‚Π°Ρ€ΠΈΡ„ΠΎΠ² (см. Π’Π°Π±Π»ΠΈΡ†Π° 2).

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΈ Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ условиС Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΠΌΠΎΡΡ‚ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ (Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹ 2,3 ΠΈ 4):

1) =950+50+1000=2000;

2) =250+1000+750=2000.

УсловиС баланса ΡΠΎΠ±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ. Запасы Ρ€Π°Π²Π½Ρ‹ потрСбностям. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, модСль транспортной Π·Π°Π΄Π°Ρ‡ΠΈ являСтся Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ.

РассчитываСм Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π°Π½ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΎΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «Π‘Π΅Π²Π΅Ρ€ΠΎ-Π—Π°ΠΏΠ°Π΄Π½ΠΎΠ³ΠΎ ΡƒΠ³Π»Π°» ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠ»Π°Π½, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 3.

Π’Π°Π±Π»ΠΈΡ†Π° 3 — ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½.

Π”Π°Π»Π΅Π΅ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Ρ‹ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅ (7), прСдполагая Ρ‡Ρ‚ΠΎ u1=0:

ui+vj=cij

1) u1 + v1 = 12; 0 + v1 = 12; v1 = 12;

2) u1 + v2 = 16; 0 + v2 = 16; v2 = 16;

3) u2 + v2 = 4; 16 + u2 = 4; u2 = -12;

4) u3 + v2 = 8; 16 + u3 = 8; u3 = -8;

5) u3 + v3 = 14; -8 + v3 = 14; v3 = 22.

ΠžΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎΡ†Π΅Π½ΠΊΠΈ свободных ΠΊΠ»Π΅Ρ‚ΠΎΠΊ, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ…: ui + vj > cij:

(1;3): 0 + 22 > 21; ?13 = 0 + 22 — 21 = 1;

(2;3): -12 + 22 > 9; ?23 = -12 + 22 — 9 = 1;

(3;1): -8 + 12 > 3; ?31 = -8 + 12 — 3 = 1;

max (1,1,1) = 1.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡ†Π΅Π½ΠΊΡƒ свободной ΠΊΠ»Π΅Ρ‚ΠΊΠΈ (1;3): 21.

Для этого Π² ΠΏΠ΅Ρ€ΡΠΏΠ΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ (1;3) поставим Π·Π½Π°ΠΊ «+», Π° Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π²Π΅Ρ€ΡˆΠΈΠ½Π°Ρ… ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° Ρ‡Π΅Ρ€Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ Π·Π½Π°ΠΊΠΈ «-», «+», «-».

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 4.

Π’Π°Π±Π»ΠΈΡ†Π° 4 — Π¦ΠΈΠΊΠ» пСрспСктивной ΠΊΠ»Π΅Ρ‚ΠΊΠΈ.

Запасы.

12[250].

16[700][-].

21[+].

4[50].

8[250][+].

14[750][-].

ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ.

Из Π³Ρ€ΡƒΠ·ΠΎΠ² Ρ…ij стоящих Π² ΠΌΠΈΠ½ΡƒΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ…, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ наимСньшСС, Ρ‚. Π΅. Ρƒ = min (1, 2) = 700. ΠŸΡ€ΠΈΠ±Π°Π²Π»ΡΠ΅ΠΌ 700 ΠΊ ΠΎΠ±ΡŠΠ΅ΠΌΠ°ΠΌ Π³Ρ€ΡƒΠ·ΠΎΠ², стоящих Π² ΠΏΠ»ΡŽΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ… ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π΅ΠΌ 700 ΠΈΠ· Π₯ij, стоящих Π² ΠΌΠΈΠ½ΡƒΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ…. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ (Ρ‚Π°Π±Π»ΠΈΡ†Π° 5).

Π’Π°Π±Π»ΠΈΡ†Π° 5 — Новый ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½.

Запасы.

12[250].

21[700].

4[50].

8[950].

14[50].

ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΠΎΡ€Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°. НайдСм ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Ρ‹ ui, vj. ΠΏΠΎ Π·Π°Π½ΡΡ‚Ρ‹ΠΌ ΠΊΠ»Π΅Ρ‚ΠΊΠ°ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ui + vj = cij, полагая, Ρ‡Ρ‚ΠΎ u1 = 0:

1) u1 + v1 = 12; 0 + v1 = 12; v1 = 12;

2) u1 + v3 = 21; 0 + v3 = 21; v3 = 21;

3) u3 + v3 = 14; 21 + u3 = 14; u3 = -7;

4) u3 + v2 = 8; -7 + v2 = 8; v2 = 15;

5) u2 + v2 = 4; 15 + u2 = 4; u2 = -11.

ΠžΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎΡ†Π΅Π½ΠΊΠΈ свободных ΠΊΠ»Π΅Ρ‚ΠΎΠΊ, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ui + vj > cij:

(2;3): -11 + 21 > 9; ?23 = -11 + 21 — 9 = 1;

(3;1): -7 + 12 > 3; ?31 = -7 + 12 — 3 = 2.

max (1,2) = 2.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡ†Π΅Π½ΠΊΡƒ свободной ΠΊΠ»Π΅Ρ‚ΠΊΠΈ (3;1): 3.

Для этого Π² ΠΏΠ΅Ρ€ΡΠΏΠ΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ (3;1) поставим Π·Π½Π°ΠΊ «+», Π° Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π²Π΅Ρ€ΡˆΠΈΠ½Π°Ρ… ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° Ρ‡Π΅Ρ€Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ Π·Π½Π°ΠΊΠΈ «-», «+», «-».

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 6.

Π’Π°Π±Π»ΠΈΡ†Π° 6 — Π¦ΠΈΠΊΠ» пСрспСктивной ΠΊΠ»Π΅Ρ‚ΠΊΠΈ.

Запасы.

12[250][-].

21[700][+].

4[50].

3[+].

8[950].

14[50][-].

ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ.

Из Π³Ρ€ΡƒΠ·ΠΎΠ² Ρ…ij стоящих Π² ΠΌΠΈΠ½ΡƒΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ…, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ наимСньшСС, Ρ‚. Π΅. Ρƒ = min (3, 3) = 50. ΠŸΡ€ΠΈΠ±Π°Π²Π»ΡΠ΅ΠΌ 50 ΠΊ ΠΎΠ±ΡŠΠ΅ΠΌΠ°ΠΌ Π³Ρ€ΡƒΠ·ΠΎΠ², стоящих Π² ΠΏΠ»ΡŽΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ… ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π΅ΠΌ 50 ΠΈΠ· Π₯ij, стоящих Π² ΠΌΠΈΠ½ΡƒΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ…. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ (Ρ‚Π°Π±Π»ΠΈΡ†Π° 7).

Π’Π°Π±Π»ΠΈΡ†Π° 7 — Новый ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½.

Запасы.

12[200].

21[750].

4[50].

3[50].

8[950].

ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΠΎΡ€Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°. НайдСм ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Ρ‹ ui, vj. ΠΏΠΎ Π·Π°Π½ΡΡ‚Ρ‹ΠΌ ΠΊΠ»Π΅Ρ‚ΠΊΠ°ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ui + vj = cij, полагая, Ρ‡Ρ‚ΠΎ u1 = 0.

u1 + v1 = 12; 0 + v1 = 12; v1 = 12.

u3 + v1 = 3; 12 + u3 = 3; u3 = -9.

u3 + v2 = 8; -9 + v2 = 8; v2 = 17.

u2 + v2 = 4; 17 + u2 = 4; u2 = -13.

u1 + v3 = 21; 0 + v3 = 21; v3 = 21.

ΠžΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎΡ†Π΅Π½ΠΊΠΈ свободных ΠΊΠ»Π΅Ρ‚ΠΎΠΊ, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ui + vj > cij

(1;2): 0 + 17 > 16; ?12 = 0 + 17 — 16 = 1.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡ†Π΅Π½ΠΊΡƒ свободной ΠΊΠ»Π΅Ρ‚ΠΊΠΈ (1;2): 16.

Для этого Π² ΠΏΠ΅Ρ€ΡΠΏΠ΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ (1;2) поставим Π·Π½Π°ΠΊ «+», Π° Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π²Π΅Ρ€ΡˆΠΈΠ½Π°Ρ… ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° Ρ‡Π΅Ρ€Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ Π·Π½Π°ΠΊΠΈ «-», «+», «-».

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 8.

Π’Π°Π±Π»ΠΈΡ†Π° 8 — Π¦ΠΈΠΊΠ» пСрспСктивной ΠΊΠ»Π΅Ρ‚ΠΊΠΈ.

Запасы.

12[200][-].

16[+].

21[750].

4[50].

3[50][+].

8[950][-].

ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ.

Из Π³Ρ€ΡƒΠ·ΠΎΠ² Ρ…ij стоящих Π² ΠΌΠΈΠ½ΡƒΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ…, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ наимСньшСС, Ρ‚. Π΅. Ρƒ = min (1, 1) = 200. ΠŸΡ€ΠΈΠ±Π°Π²Π»ΡΠ΅ΠΌ 200 ΠΊ ΠΎΠ±ΡŠΠ΅ΠΌΠ°ΠΌ Π³Ρ€ΡƒΠ·ΠΎΠ², стоящих Π² ΠΏΠ»ΡŽΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ… ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π΅ΠΌ 200 ΠΈΠ· Π₯ij, стоящих Π² ΠΌΠΈΠ½ΡƒΡΠΎΠ²Ρ‹Ρ… ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ…. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ (Ρ‚Π°Π±Π»ΠΈΡ†Π° 9).

Π’Π°Π±Π»ΠΈΡ†Π° 9 — Новый ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½.

Запасы.

16[200].

21[750].

4[50].

3[250].

8[750].

ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΠΎΡ€Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°. НайдСм ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Ρ‹ ui, vj. ΠΏΠΎ Π·Π°Π½ΡΡ‚Ρ‹ΠΌ ΠΊΠ»Π΅Ρ‚ΠΊΠ°ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ui + vj = cij, полагая, Ρ‡Ρ‚ΠΎ u1 = 0.

u1 + v2 = 16; 0 + v2 = 16; v2 = 16.

u2 + v2 = 4; 16 + u2 = 4; u2 = -12.

u3 + v2 = 8; 16 + u3 = 8; u3 = -8.

u3 + v1 = 3; -8 + v1 = 3; v1 = 11.

u1 + v3 = 21; 0 + v3 = 21; v3 = 21.

ΠžΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ являСтся ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ всС ΠΎΡ†Π΅Π½ΠΊΠΈ свободных ΠΊΠ»Π΅Ρ‚ΠΎΠΊ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‚ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ ui + vj <= cij.

ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ составят (Ρ„ΠΎΡ€ΠΌΡƒΠ»Π° 6):

F (x) = 16*200 + 21*750 + 4*50 + 3*250 + 8*750 = 25 900 Π΄.Π΅.

2.3 Бтруктурная схСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Эскиз интСрфСйса ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ² прСдставлСн Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 1.

Рисунок 1 — Эскиз интСрфСйса ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²».

Бтруктурная схСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ прСдставлСна Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.

Рисунок 2 — Бтруктурная схСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²».

2.4 Π‘Ρ…Π΅ΠΌΠ° взаимодСйствия ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ информация

Π‘Ρ…Π΅ΠΌΠ° взаимодСйствия ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ прСдставлСна Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 3.

Рисунок 3 — Π‘Ρ…Π΅ΠΌΠ° взаимодСйствия ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ.

3. Руководство программисту

Π Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ осущСствляСтся ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Windows XP ΠΈ Π²Ρ‹ΡˆΠ΅. Для установки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²» Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ с Π½ΠΎΡΠΈΡ‚Сля ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ΄ΠΈΠ½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Π€Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.pas содСрТат описания ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, Ρ‚. Π΅. содСрТат ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹; Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.dfm содСрТат ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… Ρ„ΠΎΡ€ΠΌ; Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.dpr — содСрТат ΠΎΠ±Ρ‰Π΅Π΅ описаниС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°; Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.dcu — содСрТат Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ прСобразования Π² ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΉ инструкции тСкста ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² Ρ„Π°ΠΉΠ»Π°. ВСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ находится Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ А.

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ MofP. exe Ρ„Π°ΠΉΠ».

Для ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, систСмный программист Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚. Π­Ρ‚ΠΎ Ρ„Π°ΠΉΠ»Ρ‹ модуля *.pas, Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ *.dpr ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ описаний. ΠœΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Delphi 7.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ — это слоТный ΠΈ Π½Π΅ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ процСсс. Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ….

Для прСдотвращСния этого ΠΈΠ»ΠΈ для устранСния нСисправностСй Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, (Ссли это связано с ΠΎΡ‚сутствиСм Ρ„Π°ΠΉΠ»ΠΎΠ²), Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ доступа ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° содСрТит 3 модуля:

Ρ„ΠΎΡ€ΠΌΠ° Resh — главная Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, содСрТит Π² ΡΠ΅Π±Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π Π΅ΡˆΠ΅Π½ΠΈΠ΅», «Π‘ΠΏΡ€Π°Π²ΠΊΠ°», ΠΈ «ΠŸΡ€ΠΈΠΌΠ΅Ρ€»;

Ρ„ΠΎΡ€ΠΌΠ° priv — Ρ„ΠΎΡ€ΠΌΠ° привСтствия с ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΌ описаниСм возмоТности ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

Ρ„ΠΎΡ€ΠΌΠ° Sprav — Ρ„ΠΎΡ€ΠΌΠ° просмотра ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅.

4. Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ

4.1 ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния

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

Для запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» MofP.exe. На ΡΠΊΡ€Π°Π½Π΅ появится Ρ„ΠΎΡ€ΠΌΠ° привСтствия, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ находится ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС возмоТностСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ° «ΠžΠš» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π½Π°ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ.

ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΠš» появляСтся Ρ„ΠΎΡ€ΠΌΠ° для Π²Π²ΠΎΠ΄Π° условий Π·Π°Π΄Π°Ρ‡ΠΈ:

— Ρ‚Π°Π±Π»ΠΈΡ†Π°;

— ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ списки для Π²Π²ΠΎΠ΄Π° размСрности Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹;

— ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π Π΅ΡˆΠ΅Π½ΠΈΠ΅», «ΠŸΡ€ΠΈΠΌΠ΅Ρ€» ΠΈ «Π‘ΠΏΡ€Π°Π²ΠΊΠ°».

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

ПослС наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π Π΅ΡˆΠ΅Π½ΠΈΠ΅», Π±ΡƒΠ΄Π΅Ρ‚ рассчитан Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ ΠΈ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΎΠ², Π° Π² ΡΠΎΡΠ΅Π΄Π½Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ — ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ ΠΈ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΎΠ² ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°. ПослС этого ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выдаст сообщСниС ΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΠΈ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½ΠΎΠ².

ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅, ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ «ΠœΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²».

4.2 Π Π°Π±ΠΎΡ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ

Для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ «Π‘ΠΏΡ€Π°Π²ΠΊΠ°» ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ страницу «Πž ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅». Для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΏΡ€Π°Π²ΠΊΠ°» ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ страницу «Πž Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅», Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ свСдСния ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π²Ρ‹Π±Ρ€Π°Π² Π²ΠΊΠ»Π°Π΄ΠΊΡƒ «Πž ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅».

4.3 НаиболСС вСроятныС ошибки

НаиболСС вСроятной ошибкой являСтся ошибка прСобразования, которая Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π² ΡΠ»ΡƒΡ‡Π°ΡΡ… Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ заполнСния Π΄Π°Π½Π½Ρ‹Ρ…, Π»ΠΈΠ±ΠΎ ΠΈΡ… Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ (рисунок 4 ΠΈ 5).

Π’Π°ΠΊ ΠΆΠ΅ выводится ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² Ρ‚ΠΎΠΌ случаС, Ссли данная Π·Π°Π΄Π°Ρ‡Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ Ρ‚ΠΈΠΏ (рисунок 6).

Рисунок 4 — Ошибка Π²Π²ΠΎΠ΄Π° размСрности Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Рисунок 5 — Ошибка Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Рисунок 6 — ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ Π½Π΅Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΠΌΠΎΠΌ Ρ‚ΠΈΠΏΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ.

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

Π’ΠΎ Π²Ρ€Π΅ΠΌΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π±Ρ‹Π»ΠΈ Π·Π°ΠΊΡ€Π΅ΠΏΠ»Π΅Π½Ρ‹ знания ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСдС программирования Delphi 7.0. ΠŸΡ€ΠΈ создании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π±Ρ‹Π»ΠΈ ΡƒΡ‡Ρ‚Π΅Π½Ρ‹ мноТСство Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ.

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

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

ΠΠ³Π°Π»ΡŒΡ†ΠΎΠ², Π’. П. ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ: ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ /Π’.П. ΠΠ³Π°Π»ΡŒΡ†ΠΎΠ²Π°, -М.: 2006. -244 с.

Π‘ΠΎΠ½Π΄Π°Ρ€Π΅Π² Π’.М., Π ΡƒΠ±Π»ΠΈΠ½Π΅Ρ†ΠΊΠΈΠΉ Π’. И., ΠšΠ°Ρ‡ΠΊΠΎ Π•. Π“. ΠžΡΠ½ΠΎΠ²Ρ‹ программирования / Π₯ΡƒΠ΄ΠΎΠΆ. — ΠΎΡ„ΠΎΡ€ΠΌΠΈΡ‚Π΅Π»ΡŒ Π‘. А. ΠŸΡΡ‚ΠΊΠΎΠ²Π°. — Π₯Π°Ρ€ΡŒΠΊΠΎΠ²: Π€ΠΎΠ»Ρ‚ΠΎ; Ростов Π½/Π”: ЀСникс, 1998, — 368с.

Π“ΠΎΠ»ΠΎΠ²Π°Π½ΠΎΠ² М. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π² ΡΡ€Π΅Π΄Π΅ Delphi: ΡƒΡ‡Π΅Π±.пособиС. И. Π₯Π°Π»Π΄ΠΈΠ½. Π’ΠΈΠ»ΡŒΡΠΌΡ, 2006. 768 с.

ΠŸΠ°Ρ€Ρ‚Ρ‹ΠΊΠ°, Π’. Π›. ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹: ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ /Π’.Π›. ΠŸΠ°Ρ€Ρ‚Ρ‹ΠΊΠ°, -М.: 2005. -464 с.

Π₯ΠΎΠΌΠΎΠ½Π΅Π½ΠΊΠΎ А.И., Π“ΠΎΡ„ΠΌΠ°Π½ Π’. П., ΠœΠ΅Ρ‰Π΅Ρ€ΡΠΊΠΎΠ² Π•. Π’, Никифоров Π’. Π“.: ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ Delphi 7 Π² ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΈΠΊΠ΅. — Π‘Пб: Π‘Π₯Π’-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 2004. — 1216 c.

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

ВСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

program MofP;

uses.

Forms,.

Resh in 'Resh.pas' {Form1},.

Privet in 'Privet.pas' {Form2},.

Sprav in 'Sprav.pas' {Form3};

{$R *.res}.

begin.

Application.Initialize;

Application.CreateForm (TForm2, Form2);

Application.CreateForm (TForm1, Form1);

Application.CreateForm (TForm3, Form3);

Application.Run;

end.

unit Privet;

interface.

uses.

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

Dialogs, StdCtrls, ExtCtrls, Buttons;

type.

TForm2 = class (TForm).

Image1: TImage;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Label9: TLabel;

BitBtn1: TBitBtn;

procedure BitBtn1Click (Sender: TObject);

private.

{ Private declarations }.

public.

{ Public declarations }.

end;

var.

Form2: TForm2;

implementation.

uses Resh;

{$R *.dfm}.

procedure TForm2. BitBtn1Click (Sender: TObject);

begin.

form1.show;

form2.Hide;

end;

end.

unit Sprav;

interface.

uses.

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

Dialogs, OleCtrls, SHDocVw, StdCtrls, ComCtrls;

type.

TForm3 = class (TForm).

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

WebBrowser1: TWebBrowser;

TabSheet3: TTabSheet;

WebBrowser2: TWebBrowser;

private.

{ Private declarations }.

public.

{ Public declarations }.

end;

var.

Form3: TForm3;

implementation.

{$R *.dfm}.

end.

unit Resh;

interface.

uses.

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

Dialogs, StdCtrls, Grids, Buttons, ExtCtrls;

type.

TForm1 = class (TForm).

sgIsx: TStringGrid;

sgZap: TStringGrid;

sgPotr: TStringGrid;

sgNac: TStringGrid;

sgOpt: TStringGrid;

Label10: TLabel;

Panel2: TPanel;

GroupBox1: TGroupBox;

Label7: TLabel;

Label8: TLabel;

CB1: TComboBox;

CB2: TComboBox;

StringGrid1: TStringGrid;

Button2: TButton;

Button1: TButton;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

BitBtn1: TBitBtn;

Button4: TButton;

procedure Button1Click (Sender: TObject);

procedure FormCreate (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure CB1Change (Sender: TObject);

procedure CB2Change (Sender: TObject);

procedure FormClose (Sender: TObject; var Action: TCloseAction);

procedure Button4Click (Sender: TObject);

procedure BitBtn1Click (Sender: TObject);

private.

{ Private declarations }.

public.

{ Public declarations }.

end;

var.

Form1: TForm1;

C, x, delta:array [1.10,1.10] of real; Potr, beta: array[1.10] of real;

Zapas, alfa: array[1.10] of real; z, p: integer; //z-количСство ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² с Π·Π°ΠΏΠ°ΡΠ°ΠΌΠΈ, p — с ΠΏΠΎΡ‚рСбностями.

zapol:array [1.10,1.10] of Boolean;

zakon:Boolean; // Π€Π»Π°Π³ окончания ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ.

implementation.

uses Privet, Sprav;

{$R *.dfm}.

//распрСдСлСниС рСсурсов Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° происходит ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ сСвСро-Π·Π°ΠΏΠ°Π΄Π½ΠΎΠ³ΠΎ ΡƒΠ³Π»Π°.

Procedure Naxod_Poten;

Var i, j: integer;

vix:boolean;

Begin.

For i:=1 to z do alfa[i]: =-MaxInt; // Ρ‚. Π΅ Π²ΡΠ΅ Π°Π»ΡŒΡ„Ρ‹ Π½Π΅ ΠΈΠ·Π²Π΅ΡΡ‚Π½Ρ‹.

For j:=1 to p do beta[j]: =-MaxInt; // Ρ‚. Π΅ Π²ΡΠ΅ бэты Π½Π΅ ΠΈΠ·Π²Π΅ΡΡ‚Π½Ρ‹.

Repeat.

alfa[1]: =0;

For i:=1 to z do.

For j:=1 to p do.

Begin.

If zapol[i, j] then.

if (alfa[i]=-MaxInt)and (beta[j]<>-MaxInt) then alfa[i]: =beta[j]-c[i, j].

else if (alfa[i]<>-MaxInt)and (beta[j]=-MaxInt) then beta[j]: =c[i, j]+alfa[i];

End;

vix:=True;

For i:=1 to z do if alfa[i]=-MaxInt then vix:=False;

For j:=1 to p do if beta[j]=-MaxInt then vix:=False;

Until vix;

End;

Procedure Naxod_delta;

Var i, j: integer;

Begin.

For i:=1 to z do.

For j:=1 to p do.

Begin.

delta[i, j]: =beta[j]-alfa[i]-c[i, j];

End;

End;

Procedure Naxod_Plan;

var i, j, sv_i, sv_j, i_tek, j_tek, i_min, j_min:integer;

max, min: real;

znaki:array [1.10,1.10] of integer;

kol_v_stolbce:array[1.10] of integer;

kol_v_stroke: array[1.10] of integer;

zapol1:array [1.10,1.10] of Boolean;

Procedure Init_cikl; //ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅.

var i, j: integer;

Begin.

For i:=1 to z do.

For j:=1 to p do.

znaki[i, j]: =0;

// Π½Π°ΠΉΠ΄Π΅ΠΌ количСство Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹Ρ… ячССк Π² ΡΡ‚Ρ€ΠΎΠΊΠ°Ρ… ΠΈ ΡΡ‚ΠΎΠ»Π±Ρ†Π°Ρ….

for i:=1 to z do kol_v_stroke[i]: =0;

For j:=1 to p do kol_v_stolbce[j]: =0;

for i:=1 to z do.

For j:=1 to p do.

if zapol1[i, j] then.

begin.

kol_v_stroke[i]: =kol_v_stroke[i]+1;

kol_v_stolbce[j]:=kol_v_stolbce[j]+1;

end;

i_tek:=sv_i;

j_tek:=sv_j;

znaki[i_tek, j_tek]:=1;

end;

Begin.

max:=0;

For i:=1 to z do.

For j:=1 to p do.

if (delta[i, j]>max)and (Not (zapol[i, j])) then.

begin.

max:= delta[i, j];

sv_i:=i; sv_j:=j;

//ΠšΠ»Π΅Ρ‚ΠΊΠ° (sv_i, sv_j) — новая заполняСмая ΠΊΠ»Π΅Ρ‚ΠΊΠ°.

end;

if max=0 then // Ссли Π½Π΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄Π΅Π»ΡŒΡ‚Π°.

begin.

zakon:=True;

exit.

end;

For i:=1 to z do.

For j:=1 to p do // пСрСписываСм ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ заполнСния.

zapol1[i, j]: =zapol[i, j];

// Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΉΠ΄Π΅ΠΌ Ρ†ΠΈΠΊΠ».

Init_cikl;

Repeat.

// ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΏΠΎ ΡΡ‚ΠΎΠ»Π±Ρ†Ρƒ.

for i:=1 to z do.

if (i<>i_tek)and zapol1[i, j_tek] then.

Begin.

i_tek:=i;

znaki[i_tek, j_tek]: =-1;

break;

End;

if i_tek=sv_i then break;

// ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΏΠΎ ΡΡ‚Ρ€ΠΎΠΊΠ΅.

for j:=1 to p do.

if (j<>j_tek)and zapol1[i_tek, j] then.

Begin.

j_tek:=j;

znaki[i_tek, j_tek]: =1;

break;

End;

if kol_v_stolbce[j_tek]<2 then // Ссли зашли Π² Ρ‚ΡƒΠΏΠΈΠΊ.

begin.

zapol1[i_tek, j_tek]: =False; // ΡƒΠ±ΠΈΡ€Π°Π΅ΠΌ послСднюю ячСйку.

Init_cikl; // ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ сначала.

end;

if kol_v_stroke[i_tek]<2 then // Ссли зашли Π² Ρ‚ΡƒΠΏΠΈΠΊ.

begin.

zapol1[i_tek, j_tek]: =False; // ΡƒΠ±ΠΈΡ€Π°Π΅ΠΌ послСднюю ячСйку.

Init_cikl; // ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ сначала.

end;

Until False;

// По ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ Π·Π½Π°ΠΊΠΎΠ² Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт.

min:=MaxInt; // Π·Π°Π²Π΅Π΄ΠΎΠΌΠΎ большСС число.

for i:=1 to z do.

for j:=1 to p do.

if (znaki[i, j]=-1)and (x[i, j]<min) then.

begin.

min:=x[i, j];

i_min:=i; j_min:=j;

end;

//ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ Π½ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠ»Π°Π½Ρƒ.

zapol[i_min, j_min]: =False;

zapol[sv_i, sv_j]:=True;

for i:=1 to z do.

for j:=1 to p do.

x[i, j]: =x[i, j]+znaki[i, j]*min;

End;

procedure Updat;

var i, j: integer;

Begin.

With Form1 do.

Begin.

For i:=1 to z do.

for j:=1 to p do.

sgOpt.Cells[j, i]: =FloatToStr (x[i, j]);

end;

End;

procedure TForm1. Button1Click (Sender: TObject);

var i, j, shag:integer;

F, sum_zap, sum_potr:real;

Z_nac:integer;

begin.

try.

for i:=1 to StringGrid1. ColCount-2 do.

for j:=1 to StringGrid1. RowCount-2 do.

sgIsx.Cells[i, j]: =StringGrid1.Cells[i, j];

for j:=0 to StringGrid1. RowCount-1 do.

sgZap.Cells[0,j]: =StringGrid1.Cells[StringGrid1.ColCount-1,j];

for i:=0 to StringGrid1. RowCount-1 do.

sgPotr.Cells[i, 0]: =StringGrid1.Cells[i, StringGrid1. RowCount-1];

z:=StringGrid1.ColCount-2;

p:=StringGrid1.RowCount-2;

zakon:=False;

For i:=1 to z do.

Begin.

for j:=1 to p do C[j, i]: =StrToFloat (sgIsx.Cells[i, j]);

Zapas[i]:=StrToFloat (sgZap.Cells[0,i]);

end;

For j:=1 to p do Potr[j]: =StrToFloat (sgPotr.Cells[j, 0]);

sum_zap:=0;

sum_potr:=0;

For i:=1 to z do sum_zap:=sum_zap+zapas[i];

for j:=1 to p do sum_potr:=sum_potr+Potr[j];

if sum_zap<>sum_potr then messagebox (handle,'Π‘ΡƒΠΌΠΌΠ° потрСбностСй Π½Π΅ Ρ€Π°Π²Π½Π° суммС запасов','Ошибка', mb_OK+mb_iconstop).

else.

begin.

StringGrid1.Cells[StringGrid1.colcount-1,StringGrid1.Rowcount-1]: =FloatToStr (sum_Zap);

sgNac.RowCount:=z+1;

sgOpt.RowCount:=z+1;

sgNac.ColCount:=p+1;

sgOpt.ColCount:=p+1;

For i:=1 to z do.

for j:=1 to p do.

Begin.

x[i, j]: =0;

zapol[i, j]:=False;

end;

// ΠΠ°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ — ΠΌΠ΅Ρ‚ΠΎΠ΄ сСвСро-Π·Π°ΠΏΠ°Π΄Π½ΠΎΠ³ΠΎ ΡƒΠ³Π»Π°.

i:=1;j:=1;

Repeat.

if Zapas[i]>Potr[j] then.

begin.

x[i, j]: =Potr[j];

Potr[j]:=0;

Zapas[i]:=Zapas[i]-x[i, j];

end.

else.

begin.

x[i, j]:=Zapas[i];

Zapas[i]:=0;

Potr[j]:=Potr[j]-x[i, j];

end;

Zapol[i, j]:=True;

if Potr[j]=0 then j:=j+1 // ??Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ ΡΠ»Π΅Π΄. ΠΊΠ»Π΅Ρ‚ΠΊΠ΅.

else i:=i+1;

Until (i>z) or (j>p);

For i:=1 to z do.

For j:=1 to p do sgNac. Cells[j, i]: =FloatToStr (x[i, j]);

// Основной Ρ†ΠΈΠΊΠ».

shag:=0;

REPEAT.

shag:=shag+1;

Naxod_Poten;

Naxod_delta;

Naxod_Plan;

Updat;

// Π½Π°ΠΉΠ΄Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

f:=0;

For i:=1 to z do.

For j:=1 to p do.

f:=f+x[i, j]*c[i, j];

if zakon then break;

label10.Caption:=FloatToStr (f);

UNTIL False;

z_nac:=0;

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

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

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

Z_nac:=z_nac+(StrToInt (sgNac.Cells[i, j])*StrToInt (sgisx.cells[i, j]));

label4.Caption:=IntToStr (z_nac);

if Z_nac>f then messageDlg ('Вранспортная Π·Π°Π΄Π°Ρ‡Π° Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°'+#10#13.

+' План ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½!', mtInformation,[mbOK], 0);

end;

except on EConvertError do MessageDlg ('Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ!'+#10#13+'ΠŸΡ€Π°Π²Π°Ρ ниТняя ΠΊΠ»Π΅Ρ‚ΠΊΠ° Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся', MTError,[mbOK], 0);

end;

end;

procedure TForm1. FormCreate (Sender: TObject);

var i, j: integer;

begin.

form2.show;

for i:=1 to StringGrid1. ColCount-2 do StringGrid1. Cells[i, 0]: ='B'+IntToStr (i);

for j:=1 to StringGrid1. RowCount-2 do StringGrid1. Cells[0,j]: ='A'+IntToStr (j);

StringGrid1.Cells[StringGrid1.ColCount-1,0]:='Запасы';

StringGrid1.Cells[0,StringGrid1.RowCount-1]:='ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ';

end;

procedure TForm1. Button2Click (Sender: TObject);

var i, j: integer;

begin.

try.

Button1.Enabled:=true;

StringGrid1.ColCount:=StrToInt (CB2.Text)+2;

StringGrid1.RowCount:=StrToInt (CB1.Text)+2;

for i:=1 to StringGrid1. ColCount-2 do StringGrid1. Cells[i, 0]: ='B'+IntToStr (i);

for j:=1 to StringGrid1. RowCount-2 do StringGrid1. Cells[0,j]: ='A'+IntToStr (j);

StringGrid1.Cells[StringGrid1.ColCount-1,0]:='Запасы';

StringGrid1.Cells[0,StringGrid1.RowCount-1]:='ΠŸΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΠΈ';

for i:=1 to StringGrid1. ColCount-2 do.

for j:=1 to StringGrid1. RowCount-2 do.

sgIsx.Cells[i, j]: =StringGrid1.Cells[i, j];

for j:=0 to StringGrid1. RowCount-1 do.

sgZap.Cells[0,j]: =StringGrid1.Cells[StringGrid1.ColCount-1,j];

for i:=0 to StringGrid1. RowCount-1 do.

sgPotr.Cells[i, 0]: =StringGrid1.Cells[i, StringGrid1. RowCount-1];

sgIsx.ColCount:=StringGrid1.ColCount-1;

sgIsx.RowCount:=StringGrid1.RowCount-1;

sgZap.ColCount:=sgIsx.ColCount;

sgPotr.ColCount:=sgIsx.ColCount;

sgZap.RowCount:=sgIsx.RowCount;

sgPotr.RowCount:=sgIsx.RowCount;

sgNac.RowCount:=sgIsx.RowCount;

sgOpt.RowCount:=sgIsx.RowCount;

sgNac.ColCount:=sgIsx.ColCount;

sgOpt.ColCount:=sgIsx.ColCount;

except on EConvertError do MessageDlg ('Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹!', MTError,[mbOK], 0);

End;

end;

procedure TForm1. CB1Change (Sender: TObject);

begin.

CB2.Text:=CB1.Text;

end;

procedure TForm1. CB2Change (Sender: TObject);

begin.

CB1.Text:=CB2.Text;

end;

procedure TForm1. FormClose (Sender: TObject; var Action: TCloseAction);

begin.

form2.Close;

end;

procedure TForm1. Button4Click (Sender: TObject);

begin.

CB1.ItemIndex:=1;

CB2.ItemIndex:=1;

Button2.Click;

StringGrid1.Cells[1,1]: ='12';

StringGrid1.Cells[2,1]:='16';

StringGrid1.Cells[3,1]:='21';

StringGrid1.Cells[1,2]:='4';

StringGrid1.Cells[2,2]:='4';

StringGrid1.Cells[3,2]:='9';

StringGrid1.Cells[1,3]:='3';

StringGrid1.Cells[2,3]:='8';

StringGrid1.Cells[3,3]:='14';

StringGrid1.Cells[4,1]:='950';

StringGrid1.Cells[4,2]:='50';

StringGrid1.Cells[4,3]:='1000';

StringGrid1.Cells[1,4]:='250';

StringGrid1.Cells[2,4]:='1000';

StringGrid1.Cells[3,4]:='750';

end;

procedure TForm1. BitBtn1Click (Sender: TObject);

begin.

form3.show;

form3.WebBrowser1.Navigate (extractFilepath (paramstr (0))+'help.mht');

form3.WebBrowser2.Navigate (ExtractFilePath (paramstr (0))+'prog.mht');

end;

end.

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

Π€ΠΎΡ€ΠΌΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Рисунок 5 — Π€ΠΎΡ€ΠΌΠ° «ΠŸΡ€ΠΈΠ²Π΅Ρ‚ствиС».

Рисунок 6 — Π€ΠΎΡ€ΠΌΠ° «ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΠΎΠ²».

Рисунок 7 — Π€ΠΎΡ€ΠΌΠ° «Π‘ΠΏΡ€Π°Π²ΠΊΠ°».

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