ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° прилоТСния для Windows, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ обСспСчиваСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ слоТСния, вычитания ΠΈ умноТСния Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ Ρ†Π΅Π»Ρ‹Ρ… чисСл

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

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° запускаСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° Ρ„Π°ΠΉΠ» Matriz.exe. На ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ ΠΎΠΊΠ½Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ располоТСн мСню MainMenu, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ справки, ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ случайных чисСл. НаТатиС Π½Π° ΠΌΠ΅Ρ‚ΠΊΠΈ ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° 1 ΠΈ ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° 2 Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ формирования ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ исходных ΠΌΠ°Ρ‚Ρ€ΠΈΡ† Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ для отобраТСния Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ StringGrid1… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° прилоТСния для Windows, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ обСспСчиваСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ слоТСния, вычитания ΠΈ умноТСния Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ Ρ†Π΅Π»Ρ‹Ρ… чисСл (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ЦСль курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Π½ΠΈΠΉ ΠΈ ΠΏΡ€Π°ΠΊΡ‚ичСскиС Π½Π°Π²Ρ‹ΠΊΠΈ ΠΏΠΎ ΠΊΡƒΡ€ΡΡƒ «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ высокого уровня».

Π—Π°Π΄Π°Ρ‡Π° курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ — Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Windows, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ обСспСчиваСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ слоТСния, вычитания ΠΈ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ Ρ†Π΅Π»Ρ‹Ρ… чисСл. Π’Ρ‹Π±ΠΎΡ€ выполняСмой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ осущСствляСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ являСтся:

Π°) ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ записка, составлСнная с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ трСбования стандартов Π•Π‘ΠŸΠ”;

Π±) исполняСмый Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€ΠΈΠ»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ ΠΊ ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ запискС Π½Π° Π΄ΠΈΡΠΊΠ΅. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ ΠΊΠ°ΠΊ основныС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ источники: Бобровский, Π‘. И. Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Delphi 2006. НовыС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΠ‘ΠŸΠ±.: ΠŸΠΈΡ‚Π΅Ρ€, 2006; ΠšΡƒΠ»ΡŒΡ‚ΠΈΠ½, Н. Π‘. ΠžΡΠ½ΠΎΠ²Ρ‹ программирования Π² Delphi 7 — БПб.: Π‘Π₯Π’-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 2003.

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ Π±Ρ‹Π»Π° использована срСда Delphi 6.

Π›ΡŽΠ±Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π² DELPHI состоит ΠΈΠ· Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ DPR) ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ (Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ PAS). ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² описываСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ Object Pascal.

Π€Π°ΠΉΠ» ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° прСдставляСт собой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Object Pascal ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ компилятором. Π­Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° автоматичСски создаСтся DELPHI ΠΈ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ лишь нСсколько строк. (View/ProjectSource).

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

Π›ΡŽΠ±ΠΎΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ структуру:

Β· Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ

Β· БСкция интСрфСйсных объявлСний

Β· БСкция Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ

Β· БСкция ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ†ΠΈΠΈ Π’Π΅Ρ€ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€ Один ΠΈΠ· ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π³Π»Π°Π²Π½Ρ‹ΠΉ, содСрТит инструкции, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… начинаСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π“Π»Π°Π²Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ прилоТСния Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ DELPHI.

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ открываСтся Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ словом UNIT, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ слСдуСт имя модуля ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ° с Π·Π°ΠΏΡΡ‚ΠΎΠΉ. Имя модуля слуТит для Π΅Π³ΠΎ связи с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ модулями ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ. Π­Ρ‚Π° связь устанавливаСтся ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ

USES <�список ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ> БСкция интСрфСйсных объявлСний открываСтся Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ словом INTERFACE. Π’ ΡΡ‚ΠΎΠΉ части содСрТатся объявлСния всСх Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² модуля (Ρ‚ΠΈΠΏΠΎΠ², констант, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΡ‚Π°Ρ‚ΡŒ доступными основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ (ΠΈΠ»ΠΈ) Π΄Ρ€ΡƒΠ³ΠΈΠΌ модулям.

БСкция Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ открываСтся словом IMPLEMENTATION, содСрТит описаниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Π’ Π½Π΅ΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ для модуля ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹.

БСкция ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ†ΠΈΠΈ — открываСтся словом BEGIN.

Π’Π΅Ρ€ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠΌ модуля, ΠΊΠ°ΠΊ ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ являСтся END с Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ.

НаиболСС распространСнным Ρ‚ΠΈΠΏΠΎΠΌ модуля Π² DELPHI являСтся ЀОРМА — ΠΌΠΎΠ΄ΡƒΠ»ΡŒ со ΡΠ²ΡΠ·Π°Π½Π½Ρ‹ΠΌ с Π½ΠΈΠΌ ΠΎΠΊΠ½ΠΎΠΌ. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ³ΠΎ модуля ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ содСрТит объявлСниС Π½ΠΎΠ²ΠΎΠ³ΠΎ класса, ΠΈ Π°Π²Ρ‚оматичСски обновляСтся Π² Ρ…ΠΎΠ΄Π΅ конструирования ΠΎΠΊΠ½Π°. Π’ ΠΈΠ½Ρ‚СрфСйсной части модуля-Ρ„ΠΎΡ€ΠΌΡ‹ содСрТится Ρ‚Π°ΠΊΠΆΠ΅ объявлСниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° для ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΎΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ класса.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΅ΡΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π½Ρ‹Π΅ с Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ:

ΠœΠΎΠ΄ΡƒΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅ΡŽΡ‚ связанныС с Π½ΠΈΠΌΠΈ ΠΎΠΊΠ½Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ эти ΠΎΠΊΠ½Π° Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ся Π½Π° ΡΠΊΡ€Π°Π½Π΅. ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² Π½ΠΈΡ… появляСтся ΠΏΡ€ΠΈ использовании, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² доступа ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… страницы DATA ACCESS, ΠΈ Ρ‚. Π΄.

ΠœΠΎΠ΄ΡƒΠ»ΠΈ динамичСских Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для создания ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² WINDOWS динамичСски связываСмых Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ DLL.

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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ языка OBJECT PASCAL Π²Π²Π΅Π»ΠΈ для обозначСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ — Класс. Классами Π’ OBJECT PASCAL Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат поля, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π²Π°. Как ΠΈ Π»ΡŽΠ±ΠΎΠΉ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ, класс слуТит лишь ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠΌ для создания ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… экзСмпляров Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ.

Π’ ΠΎΡΠ½ΠΎΠ²Π΅ классов Π»Π΅ΠΆΠ°Ρ‚ Ρ‚Ρ€ΠΈ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ инкапсуляция, наслСдованиС ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ.

Π˜Π½ΠΊΠ°ΠΏΡΡƒΠ»ΡΡ†ΠΈΡ.

Класс прСдставляСт собой Сдинство Ρ‚Ρ€Π΅Ρ… сущностСй — ΠΏΠΎΠ»Π΅ΠΉ, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π². ОбъСдинСниС этих сущностСй Π² Π΅Π΄ΠΈΠ½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ ΠΈ Π½Π°Π·Ρ‹Π²Π°Π΅Ρ‚ся инкапсуляциСй. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° классов Delphi — это, фактичСски, Π½Π°Π±ΠΎΡ€ «ΠΊΠΈΡ€ΠΏΠΈΡ‡ΠΈΠΊΠΎΠ²», созданных программистами Borland для построСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Полями Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ инкапсулированныС Π² ΠΊΠ»Π°ΡΡΠ΅ Π΄Π°Π½Π½Ρ‹Π΅. Поля ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ любого Ρ‚ΠΈΠΏΠ°, Π² Ρ‚ΠΎΠΌ числС — классами, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,

Type TMyClass = class aIntField: Integer; aStrField: String; aObjField: Tobject; end;

Π˜Π½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² ΠΊΠ»Π°ΡΡΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ. Они ΠΎΠ±ΡŠΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

Type TMyClass = class Function MyFunc (aPar: Integer) :Integer; Procedure MyProc;

end;

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

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

ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ — это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° для ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², входящих Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ классы. ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ° обСспСчиваСт ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ использованиС ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт классу ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈΠ· Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Standart, ΠΈ Π·Π½Π°Ρ ΠΏΡ€ΠΈΠ΅ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚ с ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ, Π±Ρ‹Π»Π° Ρ€Π΅ΡˆΠ΅Π½Π° поставлСнная Π·Π°Π΄Π°Ρ‡Π°. Π’Π°ΠΊ ΠΊΠ°ΠΊ, трСбуСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ, сначала Π±Ρ‹Π»ΠΈ сформулированы с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° случайных чисСл Π΄Π²Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Ρ†Π΅Π»Ρ‹Ρ… чисСл.

ΠŸΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠ°Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° пошаговой Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ цикличСскиС структуры.

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, прСдусмотрСн Π²Ρ‹Π²ΠΎΠ΄ справки ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅.

1. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° эскизного ΠΈ Ρ‚СхничСского ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠŸΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠ°Π½ стандарт Π“ΠžΠ‘Π’ 19.404−79 ΠΊ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΡŽ ΠΈ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° «ΠŸΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ записка», входящСго Π² ΡΠΎΡΡ‚Π°Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π½Π° ΡΡ‚адиях Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ эс ΠΊΠΈΠ·Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚СхничСского ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

1.1 Π—Π°Π΄Π°Π½ΠΈΠ΅

Π’Π΅ΠΌΠ°: Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° прилоТСния для Windows, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ собой Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ.

УсловиС Π·Π°Π΄Π°Ρ‡ΠΈ:

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

1.2 НазначСниС ΠΈ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ примСнСния

НСобходимо Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ выполнСния матСматичСских дСйствий Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована Π² ΡƒΡ‡Π΅Π±Π½ΠΎΠΌ процСссС Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ наглядного пособия.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ставится Π·Π°Π΄Π°Ρ‡Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Windows, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠžΠ‘ Windows.

1.3 ВСхничСскиС характСристики

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

ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ — Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обСспСчиваСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ слоТСния, вычитания ΠΈ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ Ρ†Π΅Π»Ρ‹Ρ… чисСл. Π’Ρ‹Π±ΠΎΡ€ выполняСмой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ осущСствляСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. Входная информация ΠΏΠΎ Π·Π°Π΄Π°Ρ‡Π΅ — Π΄Π²Π΅ цСлочислСнныС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния, вычитания ΠΈ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ. Выходная информация это Ρ‚ΠΎ ΠΆΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°, которая являСтся Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Для программирования Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ структура Π΄Π°Π½Π½Ρ‹Ρ… — массив ΠΈ Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ конструкции. Массив — ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… элСмСнтов. Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ. ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° опрСдСляСтся ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΈ Ρ‚ΠΈΠΏΠΎΠΌ. НапримСр А[4,3] - ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΈΠ· 4 строк ΠΈ 3 столбцов. Доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ массива осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ индСксов. Для доступа ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄Π²Π° индСкса. НапримСр A[I, j] -элСмСнт Π½Π° ΠΏΠ΅Ρ€Π΅ΡΠ΅Ρ‡Π΅Π½ΠΈΠΉ i — строки, jстолбца. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚ания ΠΌΠ°Ρ‚Ρ€ΠΈΡ† Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π½ΠΎ, Ρ‚. Π΅

Π‘[I, j]=a[I, j]+b[I, j]; ΠΈΠ»ΠΈ Π‘[I, j]=a[I, j]- b[I, j];

Для умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ† строка ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ скалярно умноТаСтся Π½Π° ΡΡ‚ΠΎΠ»Π±Π΅Ρ† Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ получится ΠΎΠ΄ΠΈΠ½ элСмСнт Π½ΠΎΠ²ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. НапримСр

Π‘[1,1]=a[1,1]*b[1,1]+a[1,2]*b[2,1]+a[1,3]*b[3,1];

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

1.3.2 ОписаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

По ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния, вычитания ΠΈ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ.

Π’Π°ΠΊ ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ исходныС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ выполняСтся Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, Ρ‚. Π΅. Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° Label1 ΠΈ Label2. Π’Ρ‹Π±ΠΎΡ€ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ осущСствляСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ Button1, Button2, ΠΈΠ»ΠΈ Button3. НиТС Π² Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 1. ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° схСма ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

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

1. Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†.

2. Π’Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†.

3. Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†.

Π‘Ρ…Π΅ΠΌΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° слоТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.

Рисунок 2. Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†

Π‘Ρ…Π΅ΠΌΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° вычитания ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 3.

Рисунок 3. Π’Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†

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

Π’Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ исходныС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 10×10. Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚ания ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹. А Π΄Π»Ρ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ умноТСния количСство столбцов ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ количСством строк Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для всСх ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ подходят ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ являСтся ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ для удобства исходныС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ΡΡ случайными числами.

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

Π—Π°Π΄Π°Π½ΠΈΠ΅ Π½Π° ΠΊΡƒΡ€ΡΠΎΠ²ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ — Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° прилоТСния для Windows, поэтому использована срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Delphi.

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

TLabel слуТит для отобраТСния тСкста Π½Π° ΡΠΊΡ€Π°Π½Π΅. МоТно ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡˆΡ€ΠΈΡ„Ρ‚ ΠΈ Ρ†Π²Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΊΠΈ, Ссли Π΄Π²Π°ΠΆΠ΄Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π½Π° ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎ Font Π² Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€Π΅ ΠžΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π­Ρ‚ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, написав всСго ΠΎΠ΄Π½Ρƒ строчку ΠΊΠΎΠ΄Π°.

TStringGrid — слуТит для прСдставлСния тСкстовых Π΄Π°Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Доступ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ происходит Ρ‡Π΅Ρ€Π΅Π· свойство Cell.

TButton позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ дСйствия ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ Delphi всС дСлаСтся ΠΎΡ‡Π΅Π½ΡŒ просто. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΠ² TButton Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ, ΠΏΠΎ Π΄Π²ΠΎΠΉΠ½ΠΎΠΌΡƒ Ρ‰Π΅Π»Ρ‡ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° события наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ. Над ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ события Show, Create, onClick, Close.

Для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ рСсурсы ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°: процСссор Pentium IV ΠΈΠ»ΠΈ Celeron 2.0Ghz.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Π°Ρ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 512 ΠœΠ±Π°ΠΉΡ‚, достаточноС количСство свободного мСста Π½Π° Π΄ΠΈΡΠΊΠ΅ — порядка 1 Π“Π±Π°ΠΉΡ‚.

2. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

2.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ содСрТит Ρ‚Ρ€ΠΈ ΠΎΠΊΠ½Π°:

1. Form1 — Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ (Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ).

2. Form2 — справка ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅.

3. Form3 — справка ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

Окно Form1 (рисунок 3).

Рисунок 3. Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ — Form1

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ описаниС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π½Π΅ ΠΎΠΏΠΈΡΠ°Π½Ρ‹.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Form1

Бвойства:

Π‘aption — ΠšΡƒΡ€ΡΠΎΠ²Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ;

Border — bsSingle;

BiSystemMenu — false;

BiMinimaze — false;

BiHelp — False;

Бобытия: Π½Π΅Ρ‚.

1- ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ TМainMenu

Бвойства:

object MainMenu1: TMainMenu

Items

Π‘ΠΏΡ€Π°Π²ΠΊΠ° (N1) О Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ (N3) О ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ (N4)

Π’Ρ‹Ρ…ΠΎΠ΄ (N2)

Бобытия:

Для N1 — событиС BitBtn1Click (приводится Π½ΠΈΠΆΠ΅).

N2Click — Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.

N3Click — ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ со Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠΎΠΉ.

N4Click — ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ Ρ„ΠΎΡ€ΠΌΠΎΠΉ.

2- ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ StringGrid1 Left = 152 Top = 42 Width = 220 Height = 180 DefaultColWidth = 20 DefaultRowHeight = 16 FixedCols = 0 FixedRows = 0

3- ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Button2 Caption = '-'

событиС OnClick = Button2Click

4- ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Button4 Left = 200 Top = 336 Width = 121 Height = 25 Caption = ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ событиС OnClick = Button4Click

5 — ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ TLabel1

Бвойства: Caption = ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° 1

Бобытия OnClick = Label2Click

НиТС приводится ΠΎΠΊΠ½ΠΎ Form2 (рисунок 4)

Рисунок 4. ΠΎΠΊΠ½ΠΎ Form2

ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Form2

Бвойства

Caption Π‘ΠΏΡ€Π°Π²ΠΊΠ° ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅

1-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Label1

Бвойства Π‘aption ΠšΡƒΡ€ΡΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅»

2-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Label1

Бвойства Π‘aption ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π» студСнт Π³Ρ€ΡƒΠΏΠΏΡ‹ Π£Π·ΠΈΠ½-709−02 КРУ Π³. Астана

3-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Label1

Бвойства Π‘aption Π‘Π°Π΄Ρ€Π΅Π΅Π² Иван Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ OnClick

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Form3

Рисунок 5

1- ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ МСмо1

2- ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Button1

свойство Π‘aption Назад

НаписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π±Ρ‹Π»ΠΈ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы (ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹) D, A, B, C: Array[0.20,0.20] of integer;

Доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ массива осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ индСксов, поэтому Π±Ρ‹Π»ΠΈ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ цСлочислСнныС простыС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.

m, n, k, i, j, p: integer;

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ цикличСскиС конструкции. ΠšΡ€ΠΎΠΌΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ² с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ слоТных конструкции.

// ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° формирования ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ А

procedure TForm1. Label2Click (Sender: TObject);

begin for i:=0 to stringGrid1. ColCount-1 do for j:=0 to stringgrid1. RowCount-1 do

begin

stringGrid3.Cells[i, j]: =''; end;

for i:=0 to stringGrid1. ColCount-1 do

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

begin

a[i, j]: =random (9);

stringGrid1.Cells[j, i]:=inttostr (a[i, j]); end;

end; // ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†

procedure TForm1. Button3Click (Sender: TObject);

begin

// ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ D for k:=0 to stringGrid1. ColCount-1 do for i:=0 to stringGrid1. ColCount-1 do d[k, i]: =0;

for k:=0 to stringGrid1. ColCount-1 do

for i:=0 to stringGrid1. ColCount-1 do

begin for j:=0 to stringgrid1. RowCount-1 do d[k, i]: =d[k, i]+a[k, j]*b[j, i]; end; // Π’Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π² StringGrid3 for i:=0 to 9 do for j:=0 to 9 do stringgrid3. Cells[j, i]: =inttostr (d[i, j]); end;

2.2 БпСцификация ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π˜ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Matr. exe ΠΈ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π½Π° ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚-дискС Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Matr1Matriz. Бостав ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

НаимСнованиС

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ

Matriz.res

Π€Π°ΠΉΠ» рСсурсов

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, графичСскиС изобраТСния

Matriz.dpr

Π€Π°ΠΉΠ» ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

БвязываСт всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… состоит ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

Matriz.dof

Π€Π°ΠΉΠ» ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ установки ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°: настройки компилятора ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ°, ΠΈΠΌΠ΅Π½Π° слуТСбных ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², условныС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹

Matriz.cfg

Π€Π°ΠΉΠ», содСрТащий ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΎΠΌ ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠΊΠ½Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ ΠΈ Π² ΠΊΠ°ΠΊΠΈΡ… позициях ΠΎΠ½ΠΈ располоТСны

Unit3.pas

Π€Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ модуля для Ρ„ΠΎΡ€ΠΌΡ‹ № 3

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ № 3

Unit3.dfm

Π€Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΡ‹ № 3

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ список свойств всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² Ρ„ΠΎΡ€ΠΌΡƒ № 3

Unit3.dcu

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» для Unit3. pas

ΠžΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ вСрсия Unit3. pas

Unit2.pas

Π€Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ модуля для Ρ„ΠΎΡ€ΠΌΡ‹ № 2

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ № 2

Unit2.dfm

Π€Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΡ‹ № 2

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ список свойств всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² Ρ„ΠΎΡ€ΠΌΡƒ № 2

Unit2.dcu

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» для Unit2. pas

ΠžΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ вСрсия Unit2. pas

Unit1.pas

Π€Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ модуля для Ρ„ΠΎΡ€ΠΌΡ‹ № 1

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ № 1

Unit1.dfm

Π€Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΡ‹ № 1

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ список свойств всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² Ρ„ΠΎΡ€ΠΌΡƒ № 1

Unit1.dcu

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» для Unit1. pas

ΠžΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ вСрсия Unit2. pas

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

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

unit Unit1;

interface

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, Menus;

type TForm1 = class (TForm) MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

StringGrid1: TStringGrid;

StringGrid2: TStringGrid;

Button1: TButton;

Button2: TButton;

Button3: TButton;

Label1: TLabel;

StringGrid3: TStringGrid;

Label2: TLabel;

Label3: TLabel;

N5: TMenuItem;

Button4: TButton;

procedure FormCreate (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure Button3Click (Sender: TObject);

procedure N3Click (Sender: TObject);

procedure Label2Click (Sender: TObject);

procedure Label3Click (Sender: TObject);

procedure N4Click (Sender: TObject);

procedure N2Click (Sender: TObject);

procedure N5Click (Sender: TObject);

procedure Button4Click (Sender: TObject);

private { Private declarations } public { Public declarations } end;

var Form1: TForm1;

d, A, B, C: array[0.20,0.20] of integer;

m, n, k, i, j, p: integer;

implementation

uses Unit2, Unit3;

{$R *.dfm}

procedure TForm1. FormCreate (Sender: TObject);

begin

randomize; //Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ случайных чисСл

// установлСниС свойств ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Stringrid2, Stringgrid3 присваиваСтся количСство строк ΠΈ //столбцов ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ StringGrid1

stringgrid2.ColCount:= stringgrid1. ColCount;

stringgrid2.RowCount:= stringgrid1. RowCount;

stringgrid2.DefaultColWidth:=stringgrid1.DefaultColWidth;

stringgrid2.DefaultRowHeight:= stringgrid1. DefaultRowHeight;

stringgrid2.FixedCols:= stringgrid1. FixedCols;

stringgrid2.FixedRows:= stringgrid1. FixedRows;

stringgrid2.Height:=stringgrid1.Height;

stringgrid2.Width:= stringgrid1. Width;

stringgrid3.ColCount:= stringgrid1. ColCount;

stringgrid3.RowCount:= stringgrid1. RowCount;

stringgrid3.DefaultColWidth:=stringgrid1.DefaultColWidth;

stringgrid3.DefaultRowHeight:= stringgrid1. DefaultRowHeight;

stringgrid3.FixedCols:= stringgrid1. FixedCols;

stringgrid3.FixedRows:= stringgrid1. FixedRows;

stringgrid3.Height:=stringgrid1.Height;

stringgrid3.Width:= stringgrid1. Width;

for i:=0 to stringgrid1. RowCount-1 do for j:=0 to stringgrid1. colCount-1 do begin stringGrid1. Cells[i, j]: ='';

stringGrid2.Cells[i, j]: =''; end; end;

// ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° слоТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†

procedure TForm1. Button1Click (Sender: TObject);

begin

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

for j:=0 to stringgrid1. ColCount-1 do

begin

c[i, j]: =a[i, j]+b[i, j];

end;

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

for j:=0 to stringgrid1. ColCount-1 do

stringgrid3.Cells[j, i]: =inttostr (c[i, j]); end;

//ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° вычитания ΠΌΠ°Ρ‚Ρ€ΠΈΡ†

procedure TForm1. Button2Click (Sender: TObject);

begin

for i:=0 to stringGrid1. ColCount-1 do

for j:=0 to stringgrid1. RowCount-1 do begin

c[i, j]: =a[i, j]-b[i, j];

end;

for i:=0 to stringGrid1. ColCount-1 do

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

stringgrid3.Cells[j, i]: =inttostr (c[i, j]);

end; // ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†

procedure TForm1. Button3Click (Sender: TObject);

begin // инициализация ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ D for k:=0 to stringGrid1. ColCount-1 do for i:=0 to stringGrid1. ColCount-1 do d[k, i]: =0; // Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ for k:=0 to stringGrid1. ColCount-1 do for i:=0 to stringGrid1. ColCount-1 do begin for j:=0 to stringgrid1. RowCount-1 do d[k, i]: =d[k, i]+a[k, j]*b[j, i];

end; // Π’Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π² Stringrid for i:=0 to 9 do for j:=0 to 9 do stringgrid3. Cells[j, i]: =inttostr (d[i, j]); end;

// запуск Ρ„ΠΎΡ€ΠΌΡ‹ 2 Π‘ΠΏΡ€Π°Π²ΠΊΠ° ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅

procedure TForm1. N3Click (Sender: TObject);

begin form2. Show;

end;

//Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ А

procedure TForm1. Label2Click (Sender: TObject);

begin for i:=0 to stringGrid1. ColCount-1 do for j:=0 to stringgrid1. RowCount-1 do begin stringGrid3. Cells[i, j]: ='';

end; for i:=0 to stringGrid1. ColCount-1 do for j:=0 to stringgrid1. RowCount-1 do begin a[i, j]: =random (9);

stringGrid1.Cells[j, i]: =inttostr (a[i, j]); end; end;

//Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π’

procedure TForm1. Label3Click (Sender: TObject);

begin for i:=0 to stringGrid1. ColCount-1 do for j:=0 to stringgrid1. RowCount-1 do begin stringGrid3. Cells[i, j]: ='';

end; for i:=0 to stringGrid1. ColCount-1 do for j:=0 to stringgrid1. RowCount-1 do begin b[i, j]: =random (9); stringGrid2. Cells[j, i]: =inttostr (b[i, j]);

end;

end;

//запуск Ρ„ΠΎΡ€ΠΌΡ‹ 3 Π‘ΠΏΡ€Π°Π²ΠΊΠ° ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅

procedure TForm1. N4Click (Sender: TObject);

begin

form3.show;

end;

//Π’Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

procedure TForm1. N2Click (Sender: TObject);

begin

form1.close;

form2.Close;

form3.Close;

end;

//Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ `ΠŸΠΎΠΌΠΎΡ‰ΡŒ'

procedure TForm1. N5Click (Sender: TObject);

begin Showmessage ('НаТмитС Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° 1 ΠΈ ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° 2 для формирования ΠΌΠ°Ρ‚Ρ€ΠΈΡ†');

end;

//ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€

procedure TForm1. Button4Click (Sender: TObject);

begin for i:=0 to stringGrid1. ColCount-1 do for j:=0 to stringgrid1. RowCount-1 do begin

???a[i, j]: =1; b[i, j]: =random (2);

end; for j:=0 to stringGrid1. ColCount-1 do for i:=0 to stringgrid1. RowCount-1 do begin stringGrid2. Cells[j, i]: =inttostr (b[i, j]);

stringGrid1.Cells[j, i]:=inttostr (a[i, j]);

end; for i:=0 to stringGrid1. ColCount-1 do for j:=0 to stringgrid1. RowCount-1 do begin C[i, j]: =0;

d[i, j]: =0; stringGrid3. Cells[j, i]: =inttostr (C[i, j]); end;

end;

end.

2.4 ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния, вычитания ΠΈ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° написана Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Object Pascal. Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΡΡ€Π΅Π΄Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм Widows 2000/XP. Для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ рСсурсы ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°: процСссор Pentium IV ΠΈΠ»ΠΈ Celeron 2.0Ghz.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Π°Ρ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 512 ΠœΠ±Π°ΠΉΡ‚, достаточноС количСство свободного мСста Π½Π° Π΄ΠΈΡΠΊΠ΅ — порядка 1 Π“Π±Π°ΠΉΡ‚.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° запускаСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° Ρ„Π°ΠΉΠ» Matriz.exe. На ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ ΠΎΠΊΠ½Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ располоТСн мСню MainMenu, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ справки, ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ случайных чисСл. НаТатиС Π½Π° ΠΌΠ΅Ρ‚ΠΊΠΈ ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° 1 ΠΈ ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° 2 Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ формирования ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ исходных ΠΌΠ°Ρ‚Ρ€ΠΈΡ† Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ для отобраТСния Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ StringGrid1 ΠΈ StringGrid2. Выходная информация размСщаСтся Π² ΠΏΠΎΠ»Π΅ StringGrid3. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ прСдлагаСтся Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° загруТаСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° Ρ„Π°ΠΉΠ» Matriz. exe ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Matr1.

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ описаны ΠΊΠ°ΠΊ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ цСлочислСнныС, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ элСмСнтов ΠΎΡ‚ 0 Π΄ΠΎ 10. Π’Π°ΠΊΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ обусловливаСтся ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·Π° памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΈ ΠΎΡˆΠΈΠ±ΠΎΠΊ связанныС Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. ЗначСния для StringGrid1. ColCount ΠΈ StringGrid1. RowCount Π·Π°Π΄Π°ΡŽΡ‚ΡΡ Π² ΠΎΠΊΠ½Π΅ ObjectInspektor. Π­Ρ‚ΠΈ значСния Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ для StringGrid2 ΠΈ StringGrid3.

2.5 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π»Π΅Π³ΠΊΠΎ провСряСтся для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚ания, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это производится ΠΏΠΎΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎ (см. Ρ€ΠΈΡΡƒΠ½ΠΊΠΈ 6 ΠΈ 7).

Рисунок 6. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ слоТСния

Рисунок 7. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ вычитания

Рисунок 8. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ умноТСния ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ трСбования, ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ ΠΏΡ€ΠΈ испытании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ порядок ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° ΠΈΡ… ΠΊΠΎΠ½Ρ‚роля. ΠŸΡ€ΠΈΠ²ΠΎΠ΄ΡΡ‚ΡΡ исходныС Π΄Π°Π½Π½Ρ‹Π΅ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹.

ΠŸΡ€ΠΈΠ»Π°Π³Π°Π΅Ρ‚ΡΡ распСчатка Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ экрана с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ тСстирования.

2.6 Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅

Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ (руководство ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π“ΠžΠ‘Π’ 19.505−79):

Β· условия выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

Β· Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

Β· сообщСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ.

Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ «Π£ΡΠ»ΠΎΠ²ΠΈΡ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹» Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ условия, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ/ΠΈΠ»ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ состав Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚ΡƒΡ€Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств ΠΈ Ρ‚. ΠΏ.).

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

Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ «Π‘ообщСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ» Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ тСксты сообщСний, Π²Ρ‹Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… Π² Ρ…ΠΎΠ΄Π΅ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, описаниС ΠΈΡ… ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΡ ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² допускаСтся ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡΡΠ½ΡΡŽΡ‰ΠΈΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ, Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ, схСмами.

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

НСмнюгин Π‘.А. Turbo Pascal: Π£Ρ‡Π΅Π±Π½ΠΈΠΊ для вуэов, БПб.: «ΠŸΠΈΡ‚Π΅Ρ€», 2007.

НСмнюгин Π‘.А. Turbo Pascal: ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ:. БПб.: Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ «ΠŸΠΈΡ‚Π΅Ρ€», 2001.

Π’ΠΈΡ€Ρ‚ Н. Алгоритмы ΠΈ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. М., ΠœΠΈΡ€, 2007.

Π›Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½Ρ‹ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ ΠΏΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ΅. Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС для Π²ΡƒΠ·ΠΎΠ², БПб.: ΠŸΠΈΡ‚Π΅Ρ€, 2007

Π€Π°Ρ€Π°ΠΎΠ½ΠΎΠ² Π’. Π’. Π’ΡƒΡ€Π±ΠΎ Паскаль7.0. ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° программирования. М., НолидТ, 2001.

ΠΡ€Ρ…Π°Π½Π³Π΅Π»ΡŒΡΠΊΠΈΠΉ, А. Π―. ΠŸΡ€ΠΈΠ΅ΠΌΡ‹ программирования Π² Delphi Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ VCL [ВСкст] / А. Π―. ΠΡ€Ρ…Π°Π½Π³Π΅Π»ΡŒΡΠΊΠΈΠΉ. — Πœ.: Π‘ΠΈΠ½ΠΎΠΌ-ΠŸΡ€Π΅ΡΡ, 2006. — 933 с.

Павловская, Π’. А. Паскаль. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ высокого уровня — БПб.: ΠŸΠΈΡ‚Π΅Ρ€, 2004. (Π΄ΠΎΠΏΡƒΡ‰Π΅Π½ ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²ΠΎΠΌ образования).

ΠšΡƒΠ»ΡŒΡ‚ΠΈΠ½, Н. Π‘. ΠžΡΠ½ΠΎΠ²Ρ‹ программирования Π² Delphi 7 — БПб.: Π‘Π₯Π’-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 2003.

Π—ΡƒΠ±ΠΎΠ², А. Π’. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Delphi. Π’Ρ€ΡŽΠΊΠΈ ΠΈ ΡΡ„Ρ„Π΅ΠΊΡ‚Ρ‹. — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2005.

Павловская, Π’. А. Паскаль. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ высокого уровня. — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2004. (Π΄ΠΎΠΏΡƒΡ‰Π΅Π½ ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²ΠΎΠΌ образования).

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