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

ΠžΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… систСм ΠΈ сСтСй

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

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

ΠžΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… систСм ΠΈ сСтСй (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚

ΠšΡƒΡ€ΡΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ содСрТит 28 страниц, 9 ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΉ, 8ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ исслСдования срСда программирования Delphi Borland 7, язык программирования Pascal.

ЦСль Ρ€Π°Π±ΠΎΡ‚Ρ‹: ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π°Π·Π²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΈΠ³Ρ€Ρƒ «Π‘Π±Π΅ΠΉ самолСт». Π Π°Π·Π²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для провСдСния досуга с Ρ†Π΅Π»ΡŒΡŽ ΠΎΡ‚Π΄Ρ‹Ρ…Π°.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π»Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π° Ρ€Π°Π·Π²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ собой ΠΈΠ³Ρ€Ρƒ «Π‘Π±Π΅ΠΉ самолСт». ΠžΠ±Π»Π°ΡΡ‚ΡŒ примСнСния: Досуг программиста.

Π ΠΠ—Π’Π›Π•ΠšΠΠ’Π•Π›Π¬ΠΠΠ― ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ, Π˜Π“Π Π, Π”ΠžΠ‘Π£Π“ ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ˜Π‘Π’Π.

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ ΠΈΠ³Ρ€Π° — ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, слуТащая для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ процСсса, связи с ΠΏΠ°Ρ€Ρ‚Π½Ρ‘Ρ€Π°ΠΌΠΈ ΠΏΠΎ ΠΈΠ³Ρ€Π΅, ΠΈΠ»ΠΈ сама Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰Π°Ρ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Ρ‚Π½Ρ‘Ρ€Π°.

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ ΠΈΠ³Ρ€Ρ‹ часто ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Ρ„ΠΈΠ»ΡŒΠΌΠΎΠ² ΠΈ ΠΊΠ½ΠΈΠ³; Π΅ΡΡ‚ΡŒ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ случаи. Π‘ 2011 Π³ΠΎΠ΄Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ ΠΈΠ³Ρ€Ρ‹ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈΠ·Π½Π°Π½Ρ‹ Π² Π‘ША ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π²ΠΈΠ΄ΠΎΠΌ искусства. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ ΠΈΠ³Ρ€Ρ‹ ΠΎΠΊΠ°Π·Π°Π»ΠΈ ΡΡ‚ΠΎΠ»ΡŒ сущСствСнноС влияниС Π½Π° ΠΎΠ±Ρ‰Π΅ΡΡ‚Π²ΠΎ, Ρ‡Ρ‚ΠΎ Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… тСхнологиях ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π° устойчивая тСндСнция ΠΊ Π³Π΅ΠΉΠΌΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ для Π½Π΅ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

ΠŸΠ΅Ρ€Π²Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ ΠΈΠ³Ρ€Ρ‹ Π±Ρ‹Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ Π² 1950 ΠΈ 1960 Π³ΠΎΠ΄Π°Ρ…. Они Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π½Π° Ρ‚Π°ΠΊΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, ΠΊΠ°ΠΊ унивСрситСтскиС ΠΌΠ΅ΠΉΠ½Ρ„Ρ€Π΅ΠΉΠΌΡ‹ ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ EDSAC.

Π’ 1952 Π³ΠΎΠ΄Ρƒ появилась ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° «OXO», ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ ΠΈΠ³Ρ€Ρƒ «ΠΊΡ€Π΅ΡΡ‚ΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ», созданная А. Π‘. Дугласом ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ Π΅Π³ΠΎ докторской диссСртации Π² ΠšΠ΅ΠΌΠ±Ρ€ΠΈΠ΄ΠΆΡΠΊΠΎΠΌ УнивСрситСтС. Π˜Π³Ρ€Π° Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΎΠΌ унивСрситСтском ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, извСстном ΠΊΠ°ΠΊ EDSAC (Electronic Delay Storage Automatic Calculator).

Π’ 1958 Π³ΠΎΠ΄Ρƒ Уильям Π₯ΠΈΠ³ΠΈΠ½Π±ΠΎΡ‚Π°ΠΌ, помогавший ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΡΠ΄Π΅Ρ€Π½ΡƒΡŽ Π±ΠΎΠΌΠ±Ρƒ Π² Π‘рукхСйвСнской Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€ΠΈΠΈ, для развлСчСния посСтитСлСй создал «Tennis for Two», (ВСннис для Π΄Π²ΠΎΠΈΡ…).

Π’ 1962 Π³ΠΎΠ΄Ρƒ Π‘Ρ‚ΠΈΠ² РассСл (Π°Π½Π³Π».) русск. Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΈΠ³Ρ€Ρƒ «Spacewar!» для ΠΌΠΈΠ½ΠΈΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° PDP-1 Π² ΠœΠ°ΡΡΠ°Ρ‡ΡƒΡΠ΅Ρ‚ском тСхнологичСском институтС, которая быстро Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΠΈΠ»Π°ΡΡŒ ΠΏΠΎ Π²ΡΠ΅ΠΌ унивСрситСтам БША.

Π’ 1969 Π³ΠΎΠ΄Ρƒ Π Π°Π»ΡŒΡ„ Π‘Π°Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·ΠΆΠ΅ стал извСстСн ΠΊΠ°ΠΊ «ΠšΠΎΡ€ΠΎΠ»ΡŒ Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³Ρ€», запросил ΠΏΠ°Ρ‚Π΅Π½Ρ‚ Π½Π° Ρ€Π°Π½Π½ΡŽΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ консоли «Television Gaming and Training Apparatus». Π’ 1967 Π³ΠΎΠ΄Ρƒ Π‘Π°Π΅Ρ€ создал ΠΈΠ³Ρ€Ρƒ ΠΏΠΈΠ½Π³-ΠΏΠΎΠ½Π³, ΠΏΠΎΡ…ΠΎΠΆΡƒΡŽ Π½Π° «Π’Сннис для Π΄Π²ΠΎΠΈΡ…». ВмСстС с Magnavox ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π» Π½Π°Π΄ созданиСм ΠΏΠ΅Ρ€Π²ΠΎΠΉ консоли, Π½Π°Π·Π²Π°Π½Π½ΠΎΠΉ Magnavox Odyssey Π² 1972 Π³ΠΎΠ΄Ρƒ.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΎΠ² Π² 1970;Ρ… Π³ΠΎΠ΄Π°Ρ… ΠΏΡ€ΠΈΠ²Π΅Π»Π° ΠΊ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΌΡƒ «Π—ΠΎΠ»ΠΎΡ‚ΠΎΠΌΡƒ Π²Π΅ΠΊΡƒ Π°Ρ€ΠΊΠ°Π΄». Одна ΠΈΠ· ΡΠ°ΠΌΡ‹Ρ… извСстных ΠΈΠ³Ρ€ Ρ‚ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ — «Pong» .

1. Π’Π°ΠΉΠΌΠ΅Ρ€

Π’Π°ΠΉΠΌΠ΅Ρ€ (ΠΎΡ‚ Π°Π½Π³Π». Timer) — Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ срСдство обСспСчСния Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ ΠΈ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΡ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ срСдствами ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

Π“Π»Π°Π²Π½ΠΎΠΉ характСристикой Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° являСтся Π΅Π³ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ — ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. По ΡΡ‚ΠΎΠΌΡƒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ дСлят Π½Π°:

1. ΠœΠ°Π»ΠΎΡ‚ΠΎΡ‡Π½Ρ‹Π΅ (ошибка измСрСния ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ 0,1 с)

2. Π’ΠΎΡ‡Π½Ρ‹Π΅ (ошибка измСрСния Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 0,001 с)

3. Π‘Π²Π΅Ρ€Ρ…Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ (ошибка измСрСния Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 10?6 c)

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Π²Π° Π²ΠΈΠ΄Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ²:

1. АппаратныС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ нСзависимо ΠΎΡ‚ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ процСссора ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ срабатывания Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅.

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

2. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ проэкта

Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прилоТСния ΠΈΠ³Ρ€Ρ‹ «Π‘Π±Π΅ΠΉ самолСт» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ срСда Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Delphi. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ содСрТит ΠΎΠ΄Π½ΠΎ ΠΎΠΊΠ½ΠΎ (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 2).

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

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

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

3. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΎΠ΄Π½Π° нСзависимая ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡Π°: ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ.

Алгоритм ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ самолСта прСдставлСн Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 1:

Рис. 1. Π‘Ρ…Π΅ΠΌΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΡΠΊΡ€Π°Π½ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΎΠΊΠ½ΠΎ (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 6) ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выполняСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: Π‘Π½Π°Ρ‡Π°Π»Π° Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ выводятся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ — лСтящиС самолСты (ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 3), ΠΈ ΠΏΡƒΡˆΠΊΠ° (ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 4). Π˜Π³Ρ€ΠΎΠΊ запускаСт Ρ€Π°ΠΊΠ΅Ρ‚Ρƒ (ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 5), которая ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ±ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ Π½Π΅ ΡΠ±ΠΈΡ‚ΡŒ самолСт. Π—Π° ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ Ρ€Π°ΠΊΠ΅Ρ‚Ρƒ. Если Ρ€Π°ΠΊΠ΅Ρ‚Π° ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² ΡΠ°ΠΌΠΎΠ»Π΅Ρ‚, Ρ‚ΠΎ ΡΡ‚ираСтся самолСт ΠΈ Ρ€Π°ΠΊΠ΅Ρ‚Π°, увСличиваСтся счСтчик сбитых самолСтов, счСтчик Ρ€Π°ΠΊΠ΅Ρ‚ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ‚ся, самолСт Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ «ΠΏΠΎΠ»Π΅Ρ‚» снова, Π° ΠΈΠ³Ρ€ΠΎΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Ρ€Π°ΠΊΠ΅Ρ‚Ρƒ. Если ΠΈΠ³Ρ€ΠΎΠΊ Π½Π΅ ΠΏΠΎΠΏΠ°Π» Π² ΡΠ°ΠΌΠΎΠ»Π΅Ρ‚, Ρ€Π°ΠΊΠ΅Ρ‚Π° Π΄ΠΎΠ»Π΅Ρ‚Π°Π΅Ρ‚ Π΄ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ ΠΎΠΊΠ½Π°, счСтчик Ρ€Π°ΠΊΠ΅Ρ‚ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ Π½Π° 1, ΠΈ ΠΈΠ³Ρ€ΠΎΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Ρ€Π°ΠΊΠ΅Ρ‚Ρƒ. Окно Π²ΠΎ Π²Ρ€Π΅ΠΌΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 7). Если счСтчик Ρ€Π°ΠΊΠ΅Ρ‚ достигаСт (0) Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСниС ΠΎ Ρ‚ΠΎΠΌ сколько самолСтов сбито. ПослС наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΠΊ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ своС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Π’Π°ΠΊΠΆΠ΅ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ ΠΈΠ³Ρ€Ρ‹ ΠΈΠ³Ρ€ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€Ρƒ Π½Π° ΠΏΠ°ΡƒΠ·Ρƒ Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡƒ «Ρ€.». ПослС наТатия всС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π°ΡŽΡ‚ своС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Для восстановлСния ΠΈΠ³Ρ€Ρ‹ потрСбуСтся Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠΎ». ПослС наТатия этой ΠΊΠ½ΠΎΠΏΠΊΠΈ самолСты ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ своС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€Ρƒ с Π½Π°Ρ‡Π°Π»Π°, Ссли Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «I». ВсС счСтчики ΡΠ±Ρ€Π°ΡΡ‹Π²Π°ΡŽΡ‚ΡΡ, Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ снова своС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.

ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΈΠ³Ρ€Ρ‹ Π½Π° ΡΠΊΡ€Π°Π½ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΎΠΊΠ½ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 8).

4. ОписаниС логичСской структуры

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π³Π»Π°Π²Π½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ выполняСт ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ. Она позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ самолСтов.

Π§Ρ‚ΠΎ Π±Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ самолСта, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» ΠΈΠ»ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ изобраТСния ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ изобраТСния со ΡΠ΄Π²ΠΈΠ³ΠΎΠΌ.

Π’Π°ΠΊ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ сигналом Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ изобраТСния Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΈ Ρƒ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚Сля Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠ³ΠΎ двиТСния. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

sam1.left: =sam1.left+(n);

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ двиТСния ΠΏΡƒΡˆΠΊΠΈ Π² ΠΎΠ±Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ стороны, Π΅Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Ρƒ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² ΡΠΎΠΎΡ‚вСтствии с Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ клавишСй.

Π§Ρ‚ΠΎ Π±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠΎΠΏΠ°Π»Π° Π»ΠΈ Ρ€Π°ΠΊΠ΅Ρ‚Π° Π² ΡΠ°ΠΌΠΎΠ»Π΅Ρ‚, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ самолСта ΠΈ Ρ€Π°ΠΊΠ΅Ρ‚Ρ‹. Если ΠΎΠ½ΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Ρ€Π°ΠΊΠ΅Ρ‚Ρƒ Π² ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π° ΡΠ°ΠΌΠΎΠ»Π΅Ρ‚ Π·Π° Ρ„ΠΎΡ€ΠΌΡƒ. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ сбитых самолСтов увСличиваСтся. Если ΠΆΠ΅ Ρ€Π°ΠΊΠ΅Ρ‚Π° Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Ρ‚ΠΎ ΡΠ°ΠΌΠΎΠ»Π΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ своС Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅, Π° Ρ€Π°ΠΊΠ΅Ρ‚Π° присваиваСтся Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅. Кол-Π²ΠΎ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Ρ€Π°ΠΊΠ΅Ρ‚ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

raketa.top: =raketa.top-20;

if raketa. top<0 then

begin

j: =j-1;

timer2.Enabled:=false;

raketa.left: =tank.left+50;

raketa.top: =tank.top+70;

Π§Ρ‚ΠΎ Π±Ρ‹ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΊΠΎΠ»-Π²ΠΎ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Ρ€Π°ΠΊΠ΅Ρ‚ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π΄ΠΎΡΡ‚ΠΈΠ³Π½ΡƒΡ‚ΡŒ своСго ΠΏΡ€Π΅Π΄Π΅Π»Π° (0).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

if raketa. top<0 then

begin

j: =j-1;

Π“Π΄Π΅ j-это ΠΊΠΎΠ»-Π²ΠΎ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Ρ€Π°ΠΊΠ΅Ρ‚.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

Π’ Ρ…ΠΎΠ΄Π΅ выполнСния Π΄Π°Π½Π½ΠΎΠΉ курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… источников Π΄Π°Π½Π½Ρ‹Ρ… Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π° заданная прСдмСтная ΠΎΠ±Π»Π°ΡΡ‚ΡŒ.

Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ кодирования Π±Ρ‹Π»Π° ΠΈΠ·ΡƒΡ‡Π΅Π½Π° RAD Delphi Π² Ρ‡Π°ΡΡ‚ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ отобраТСния Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ.

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

Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ тСстирования прилоТСния ошибок Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΎ.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ€Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€ интСрфСйс

Бписок ΠΈΡΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

1. Π€Π°Ρ€ΠΎΠ½ΠΎΠ² Π’. Π’. Delphi 4: Π£Ρ‡Π΅Π±Π½Ρ‹ΠΉ курс. — Πœ.: Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ «ΠΠΎΠ»ΠΈΠ΄ΠΆ», 1998.

2. Π”Π°Ρ€Π°Ρ…Π²Π΅Π»ΠΈΠ΄Π·Π΅ П., ΠœΠ°Ρ€ΠΊΠΎΠ² Π•. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Delphi 4. — Π‘Пб.: Π‘Π₯Π’ — Π‘Π°Π½ΠΊΡ‚-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 1999.

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

4. ΠšΡƒΠ»ΡŒΡ‚ΠΈΠ½ Н. Π‘. Delphi Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…. — Π‘Пб.: Π‘Π₯Π’ — ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 2003.

5. Π’ΠΈΡ€Ρ‚. Н. Алгоритмы ΠΈ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…: ΠŸΠ΅Ρ€. Ρ Π°Π½Π³Π». — Πœ.: ΠœΠΈΡ€, 1989.

6. Ѐокс Π”ΠΆ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°: ΠŸΠ΅Ρ€. Ρ Π°Π½Π³Π». — Πœ.: ΠœΠΈΡ€, 1985.

7. Π ΠΎΠ± Баас, Майк Π€Π΅Ρ€Π²Π°ΠΉ, Π₯айдСмария Π“ΡŽΠ½Ρ‚Π΅Ρ€. Delphi 4. ПолноС руководство. — Πš.: Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ Π³Ρ€ΡƒΠΏΠΏΠ° BHV, 1999.

8. ΠΡ€Ρ…Π°Π½Π³Π΅Π»ΡŒΡΠΊΠΈΠΉ А. Π―. Delphi5. — Πœ., Π—ΠΠž «Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ «Π‘ΠΈΠ½ΠΎΠΌ», 2001.

9. ЭлСктронная энциклопСдия.

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

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

Unit Unit1;

interface

Uses

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

Dialogs, StdCtrls, Grids, ExtCtrls, jpeg;

type

TForm1 = class (TForm)

samolet1: TTimer;

tank: TImage;

sam1: TImage;

raketa: TImage;

timer2: TTimer;

label1: TLabel;

fon: TImage;

Timer3: TTimer;

sam2: TImage;

Timer4: TTimer;

sam3: TImage;

label2: TLabel;

sam4: TImage;

Timer5: TTimer;

boom: TImage;

boom2: TImage;

boom3: TImage;

boom4: TImage;

Label3: TLabel;

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

Shift: TShiftState);

procedure samolet1Timer (Sender: TObject);

procedure timer2Timer (Sender: TObject);

procedure Timer3Timer (Sender: TObject);

procedure Timer4Timer (Sender: TObject);

procedure FormCreate (Sender: TObject);

procedure Timer5Timer (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

i, j, n:integer;

implementation

{$R *.dfm}

procedure TForm1. FormKeyDown (Sender: TObject; var Key: Word; //Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Π°Π½ΠΊΠ°

Shift: TShiftState);

begin

DoubleBuffered := True;

if (key=VK_left) and (tank.left>=0) then

tank.left:=tank.left-20;

if (key=VK_right) and (tank.left + tank. width <= Form1. Clientwidth)then

tank.left:=tank.left+20;

if key=vk_space then

timer2.enabled:=true;

if key=$ 49 then

begin

i:=0;

j:=10;

sam1.Left:=-1000;

sam2.Left:=-1000;

sam3.left:=+1000;

sam4 .Left:=+700;

label1.caption:='Π‘Π°ΠΌΠΎΠ»Π΅Ρ‚ΠΎΠ² ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΎ:'+inttostr (i); //Π²Ρ‹Π²ΠΎΠ΄ сбитых самолСтов

label2.Caption:='Π Π°ΠΊΠ΅Ρ‚ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ:'+inttostr (j); //Π²Ρ‹Π²ΠΎΠ΄ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Ρ€Π°ΠΊΠ΅Ρ‚

end;

if key=$ 50 then //ΠΏΠ°ΡƒΠ·Π° ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ «p»

begin

samolet1.Enabled:=false;

timer2.Enabled:=false;

timer3.Enabled:=false;

timer4.Enabled:=false;

timer5.Enabled:=false;

end;

if key=$4 °F then //Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€Ρƒ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ «ΠΎ»

begin

samolet1.Enabled:=true;

timer3.Enabled:=true;

timer4.Enabled:=true;

timer5.Enabled:=true ;

end;

if timer2. enabled=false then //Ρ€Π°ΠΊΠ΅Ρ‚Π° двиТСтся вмСстС с Ρ‚Π°Π½ΠΊΠΎΠΌ

begin

if (key=vk_left) then raketa. top:=tank.top+70;

if (key=vk_left) then raketa. left:=tank.left+50;

if (key=vk_right) then raketa. top:=tank.top+70;

if (key=vk_right) then raketa. left:=tank.left+50;

end;

end;

procedure TForm1. samolet1Timer (Sender: TObject); //самолСт 1

begin

sam1.left:=sam1.left+(n);

if sam1. Left > Form1. Clientwidth then

begin

sam1.Left:=form1.Width-1000

end;

if sam1. left>(-500) then

boom.visible:=false;

end;

procedure TForm1. Timer3Timer (Sender: TObject); //самолСт 2

begin

sam2.left:=sam2.left+(n);

if sam2. Left > Form1. Clientwidth then

begin

sam2.Left:=form1.Width-1500

end;

if sam2. left >(-500) then

boom2.visible:=false;

end;

procedure TForm1. Timer4Timer (Sender: TObject); //самолСт 3

begin

sam3.left:=sam3.left-(n);

if sam3. Left < (-100) then

begin sam3. Left:=sam3.Left+1000

end;

if sam3. left<700 then

boom3.visible:=false;

end;

procedure TForm1. Timer5Timer (Sender: TObject); //самолСт 4

begin

sam4.left:=sam4.left-(n);

if sam4. Left < (-100) then

begin sam4. Left:=sam4.Left+700

end;

if sam4. left<500 then

boom4.visible:=false;

end;

procedure TForm1. timer2Timer (Sender: TObject); //Ρ€Π°ΠΊΠ΅Ρ‚Π°

begin

raketa.top:=raketa.top-20;

if raketa. top<0 then //Ссли Ρ€Π°ΠΊΠ΅Ρ‚Π° достигаСт края Ρ„ΠΎΡ€ΠΌΡ‹ Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ся

begin

j:=j-1;

timer2.Enabled:=false;

raketa.left:=tank.left+50;

raketa.top:=tank.top+70;

end;

if ((raketa.Top > sam1. Top) and //Ссли ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ 1 самолСта ΠΈ Ρ€Π°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π°Π²Π½Ρ‹

(raketa.Top < sam1. Top+ sam1. height)

and

(raketa.left > sam1. left) and

(raketa.left < sam1. left+sam1.Width))

then

begin

timer2.Enabled:=false; ////////////////////////

raketa.left:=tank.left+50;

raketa.top:=tank.top+70;

boom.Left:=sam1.Left;

boom.Visible:=true;

sam1.Left:=sam1.left-1000;

i:=i+1;

end;

if ((raketa.Top > sam2. Top) and //Ссли ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ 2 самолСта ΠΈ Ρ€Π°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π°Π²Π½Ρ‹

(raketa.Top < sam2. Top+ sam2. height)

and

(raketa.left > sam2. left) and

(raketa.left < sam2. left+sam2.Width))

then

begin

timer2.Enabled:=false;

raketa.left:=tank.left+50;

raketa.top:=tank.top+70;

boom2.Left:=sam2.Left;

boom2.Visible:=true;

sam2.left:=-1000;

i:=i+1;

end;

if ((raketa.Top > sam3. Top) and //Ссли ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ 3 самолСта ΠΈ Ρ€Π°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π°Π²Π½Ρ‹

(raketa.Top < sam3. Top+ sam3. height)

and

(raketa.left > sam3. left) and

(raketa.left < sam3. left+sam3.Width))

then

begin

timer2.Enabled:=false;

raketa.left:=tank.left+50;

raketa.top:=tank.top+70;

boom3.Left:=sam3.Left;

boom3.Visible:=true;

sam3.left:=+1000;

i:=i+1;

end;

if ((raketa.Top > sam4. Top) and //Ссли ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ 4 самолСта ΠΈ Ρ€Π°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π°Π²Π½Ρ‹

(raketa.Top < sam4. Top+ sam4. height)

and

(raketa.left > sam4. left) and

(raketa.left < sam4. left+sam4.Width))

then

begin

timer2.Enabled:=false;

raketa.left:=tank.left+50;

raketa.top:=tank.top+70;

boom4.Left:=sam4.Left;

boom4.Visible:=true;

sam4.left:=+700;

i:=i+1;

end;

if i=20 then begin

n:=10;

label3.Caption:='Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ слоТности:2';

end;

if i=40 then begin

n:=14;

label3.Caption:='Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ слоТности:3';

end;

if i=60 then begin

n:=20;

label3.Caption:='Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ слоТности:4';

end;

label1.caption:='Π‘Π°ΠΌΠΎΠ»Π΅Ρ‚ΠΎΠ² ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΎ:'+inttostr (i); //Π²Ρ‹Π²ΠΎΠ΄ сбитых самолСтов

label2.Caption:='Π Π°ΠΊΠ΅Ρ‚ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ:'+inttostr (j); //Π²Ρ‹Π²ΠΎΠ΄ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Ρ€Π°ΠΊΠ΅Ρ‚

if j<1 then //Ссли Ρ€Π°ΠΊΠ΅Ρ‚Ρ‹ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈΡΡŒ

begin //ΠΈΠ³Ρ€Π° останавливаСтся ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ сообщСниС

showmessage ('CΠ°ΠΌΠΎΠ»Π΅Ρ‚ΠΎΠ² Π²Ρ€Π°Π³Π° ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΎ:'+inttostr (i));//Π²Ρ‹Π²ΠΎΠ΄ сбитых самолСтов

close;

end;

end;

procedure TForm1. FormCreate (Sender: TObject); //ΠΏΡ€ΠΈ запускС ΠΈΠ³Ρ€Ρ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ сообщСниС

begin

showmessage ('p-ΠΏΠ°ΡƒΠ·Π°, ΠΎ-Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€Ρƒ, i-навая ΠΈΠ³Ρ€Π°, space-огонь, <-,-> -ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚Π°Π½ΠΊΠΎΠΌ');

j:=10;

boom.Visible:=false; //стартовоС ΠΊΠΎΠ»-Π²ΠΎ Ρ€Π°ΠΊΠ΅Ρ‚

boom2.Visible:=false;

boom3.Visible:=false;

boom4.Visible:=false;

n:=8;

label1.caption:='Π‘Π°ΠΌΠΎΠ»Π΅Ρ‚ΠΎΠ² ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΎ:'+inttostr (i); //Π²Ρ‹Π²ΠΎΠ΄ сбитых самолСтов

label2.Caption:='Π Π°ΠΊΠ΅Ρ‚ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ:'+inttostr (j); //Π²Ρ‹Π²ΠΎΠ΄ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Ρ€Π°ΠΊΠ΅Ρ‚

label3.Caption:='Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ слоТности:1';

end;

end.

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

ОсновноС ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Form1)

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

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ самолСта

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

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ установки

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

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°ΠΊΠ΅Ρ‚Ρ‹

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

Окно Π²ΠΎ Π²Ρ€Π΅ΠΌΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

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

Окно Π²ΠΎ Π²Ρ€Π΅ΠΌΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

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

Окно послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

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