Π‘Π°ΠΊΠ°Π»Π°Π²Ρ€
Π”ΠΈΠΏΠ»ΠΎΠΌΠ½Ρ‹Π΅ ΠΈ курсовыС Π½Π° Π·Π°ΠΊΠ°Π·

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Β«Π˜Π³Ρ€Π°Β» Π—ΠΌΠ΅ΠΉΠΊΠ°

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

ЦСлью курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ‹Ρ‚Π° ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² ΡΠΎΠΎΡ‚вСтствии с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ прилоТСния, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠžΠ‘ Microsoft Windows, Π² ΡΡ€Π΅Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Microsoft Visual C++, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π°Π²Ρ‹ΠΊΠ° составлСния ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ записки ΠΈ ΠΎΡ„ормлСния Π² ΡΠΎΠΎΡ‚вСтствии с Ρ‚рСбованиями, принятыми Π½Π° Ρ„Π°ΠΊΡƒΠ»ΡŒΡ‚Π΅Ρ‚Π΅ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Π² ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Β«Π˜Π³Ρ€Π°Β» Π—ΠΌΠ΅ΠΉΠΊΠ° (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ГосударствСнноС ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΡƒΡ‡Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²Ρ‹ΡΡˆΠ΅Π³ΠΎ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ образования

«Π‘ибирская государствСнная Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎ-дороТная акадСмия

(Π‘ΠΈΠ±ΠΠ”Π˜)"

Π€Π°ΠΊΡƒΠ»ΡŒΡ‚Π΅Ρ‚ Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Π² ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ НаправлСниС Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠšΠ°Ρ„Π΅Π΄Ρ€Π° Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠŸΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ записка ΠΊ ΠΊΡƒΡ€ΡΠΎΠ²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ «Π―Π·Ρ‹ΠΊΠΈ программирования»

НазваниС Ρ€Π°Π±ΠΎΡ‚Ρ‹ «Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «Π˜Π³Ρ€Π° «Π—ΠΌΠ΅ΠΉΠΊΠ°»

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»: студСнт Π³Ρ€. Π‘Π˜Π±-13И1

Π©Π΅ΠΏΠΎΠ² ОлСг ΠœΠ°ΠΊΡΠΈΠΌΠΎΠ²ΠΈΡ‡ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ» ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΡŒ Π’ΠΎΠ»ΠΊΠ°Ρ‡Π΅Π²Π° Π•.Π’.

Омск 2014

1. Π‘Ρ€Π΅Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Microsoft Visual C++

1.1 ΠžΡΠ½ΠΎΠ²Ρ‹ языка C++

1.2 Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния Π² Microsoft Visual C++

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

2.1 ΠŸΡ€Π°Π²ΠΈΠ»Π° ΠΈΠ³Ρ€Ρ‹

2.2 Π‘Π»ΠΎΠΊ-схСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

2.2 ДСмонстрация Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

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

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, А Π›ΠΈΡΡ‚ΠΈΠ½Π³ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ЦСлью курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ‹Ρ‚Π° ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² ΡΠΎΠΎΡ‚вСтствии с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ прилоТСния, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ОБ Microsoft Windows, Π² ΡΡ€Π΅Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Microsoft Visual C++, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π°Π²Ρ‹ΠΊΠ° составлСния ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ записки ΠΈ ΠΎΡ„ормлСния Π² ΡΠΎΠΎΡ‚вСтствии с Ρ‚рСбованиями, принятыми Π½Π° Ρ„Π°ΠΊΡƒΠ»ΡŒΡ‚Π΅Ρ‚Π΅ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Π² ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ».

Π—Π°Π΄Π°Ρ‡Π°ΠΌΠΈ курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ: 1) Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π² ΡΠΎΠΎΡ‚вСтствии с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ; 2) составлСниС ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ записки

Π² ΡΠΎΠΎΡ‚вСтствии с Ρ‚рСбованиями.

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ записки ΠΊ ΠΊΡƒΡ€ΡΠΎΠ²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ приводится ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС возмоТностСй ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Microsoft Visual C++, основных алгоритмичСских конструкций языка программирования Visual C++ ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… элСмСнтов управлСния.

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π³Π»Π°Π²Π΅ приводится ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π±Π»ΠΎΠΊ-схСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚рация Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ приводится ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ ΠΈΠ·ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… вопросов ΠΈ ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ вынСсСн ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌΠΈ коммСнтариями.

1. Π‘Ρ€Π΅Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Microsoft Visual C++

Microsoft Visual C++ (MSVC) — интСгрированная срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ C++, разработанная Ρ„ΠΈΡ€ΠΌΠΎΠΉ Microsoft ΠΈ ΠΏΠΎΡΡ‚авляСмая Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π° Microsoft Visual Studio, Π»ΠΈΠ±ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π² Π²ΠΈΠ΄Π΅ бСсплатного Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π° Visual C++ Express Edition.

1.1 ΠžΡΠ½ΠΎΠ²Ρ‹ языка Π‘++

C++ — ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ статичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния.

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

язык ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° visual

1.2 Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния Π² Microsoft Visual C++

Рисунок 1.1 — Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Microsoft Visual Studio

Рисунок 1.2 — Окно создания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Рисунок 1.3 — Окно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

2. ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ прСдставляСт собой стандартноС консольноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΈΠ»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ.

Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 2.1 пСрСчислСны ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ константы ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 2.2 — Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π’Π°Π±Π»ΠΈΡ†Π° 2.1 — Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ константы ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

Имя

Π’ΠΈΠΏ

НазначСниС

main_color[]

char

шаблон для Ρ†Π²Π΅Ρ‚Π°

size

int

Ρ€Π°Π·ΠΌΠ΅Ρ€ Π·ΠΌΠ΅ΠΉΠΊΠΈ

X, Y

int

Π² ΠΊΠ°ΠΊΡƒΡŽ сторону двиТСтся Π·ΠΌΠ΅ΠΉΠΊΠ°

coordinates_x[1000], coordinates_y[1000]

int

массивы, хранящиС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ частСй Ρ‚Π΅Π»Π° Π·ΠΌΠ΅ΠΉΠΊΠΈ

food_x, food_y

int

ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΅Π΄Ρ‹

symbol

char

Ρ…Ρ€Π°Π½ΠΈΡ‚ ASCII ΠΊΠΎΠ΄ Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ клавиши

А[1000][1000]

char

Ρ‚Π°Π±Π»ΠΈΡ†Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ происходит вся ΠΈΠ³Ρ€Π°

N

const int

высота Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

M

const int

ΡˆΠΈΡ€ΠΈΠ½Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

TIME

const int

врСмя Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·ΠΌΠ΅ΠΉΠΊΠ° пСрСмСщаСтся Π½Π° ΠΎΠ΄Π½Ρƒ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ

Π’Π°Π±Π»ΠΈΡ†Π° 2.2 — Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Имя

Π’ΠΈΠΏ

НазначСниС

change_color

void

функция измСнСния Ρ†Π²Π΅Ρ‚Π° консоли

change_direction

void

функция, ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Π½Π°ΠΆΠ°Ρ‚ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ

show_table

void

функция для Π²Ρ‹Π²ΠΎΠ΄Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

clear_snake_on_table

void

ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Π»Π°ΡΡŒ Π·ΠΌΠ΅ΠΉΠΊΠ°

show_snake_on_table

void

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π·ΠΌΠ΅ΠΉΠΊΠΈ

game_over

bool

провСряСм, съСла Π»ΠΈ Π·ΠΌΠ΅ΠΉΠΊΠ° саму сСбя

check_coordinates

void

провСряСм, Π½Π΅ Π²Ρ‹ΡˆΠ»Π° Π»ΠΈ Π·ΠΌΠ΅ΠΉΠΊΠ° Π·Π° ΠΏΠΎΠ»Π΅, Ссли Π΄Π° Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ Π΅Π΅ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ

next_step

void

функция пСрСмСщСния Π·ΠΌΠ΅ΠΉΠΊΠΈ

food_check

bool

функция ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π΅Π΄Ρ‹ Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅

place_food

void

функция добавлСния Π΅Π΄Ρ‹ Π½Π° ΠΊΠ°Ρ€Ρ‚Ρƒ

standart_settings

void

Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ установки

main

int

ΠžΡΡƒΡ‰Π΅ΡΡ‚Π²Π»Π΅Π½ΠΈΠ΅ всСх Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

2.1 ΠŸΡ€Π°Π²ΠΈΠ»Π° ΠΈΠ³Ρ€Ρ‹ ΠŸΡ€Π°Π²ΠΈΠ»Π° ΠΈΠ³Ρ€Ρ‹ «Π—ΠΌΠ΅ΠΉΠΊΠ°» :

Β· Π—ΠΌΠ΅ΠΉΠΊΠ° всё врСмя двиТСтся, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡΡΡŒ Π½Π° ΠΎΠ΄Π½Ρƒ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Β· Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·ΠΌΠ΅ΠΉΠΊΠΎΠΉ происходит Ρ‡Π΅Ρ€Π΅Π· клавиши «WASD» (язык ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΈΠΉ).

Β· Когда Π·ΠΌΠ΅ΠΉΠΊΠ° достигаСт Π΅Π΄Ρ‹, Π΅Ρ‘ Π΄Π»ΠΈΠ½Π° увСличиваСтся Π½Π° ΠΎΠ΄Π½Ρƒ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ.

Β· Когда Π·ΠΌΠ΅ΠΉΠΊΠ° втыкаСтся Π² ΡΠ°ΠΌΡƒ сСбя, Π²Ρ‹ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚Π΅.

Β· Достигнув края поля, Π·ΠΌΠ΅ΠΉΠΊΠ° появляСтся с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны поля.

Β· Π‘ΡƒΡ‚ΡŒ ΠΈΠ³Ρ€Ρ‹ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π·ΠΌΠ΅ΠΉΠΊΡƒ Π½Π° ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ, Π½Π° ΡΠΊΠΎΠ»ΡŒΠΊΠΎ это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.

2.2 Π‘Π»ΠΎΠΊ-схСма части ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

2.3 ДСмонстрация Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» Π—ΠΌΠ΅ΠΉΠΊΠ°.exe. ΠŸΠΎΡΠ²ΠΈΡ‚ΡΡ ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (рисунок 2.3).

Рисунок 2.3 — ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «Π—ΠΌΠ΅ΠΉΠΊΠ°»

Π’ΠΎ Π²Ρ€Π΅ΠΌΡ ΠΈΠ³Ρ€Ρ‹ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π·ΠΌΠ΅ΠΉΠΊΠΎΠΉ Ρ‡Π΅Ρ€Π΅Π· клавиши «WASD». (рисунок 2.4).

Рисунок 2.4 — Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ наТатия клавиши «S»

ΠŸΡ€ΠΈ достиТСнии Π³ΠΎΠ»ΠΎΠ²ΠΎΠΉ Π·ΠΌΠ΅ΠΉΠΊΠΈ Π΅Π΄Ρ‹, Π΅Ρ‘ Π΄Π»ΠΈΠ½Π° увСличиваСтся. (рисунок 2.5).

Рисунок 2.5 — БъСв ΠΎΠ΄Π½Ρƒ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ Π΅Π΄Ρ‹ Π·ΠΌΠ΅ΠΉΠΊΠ° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ»Π°ΡΡŒ Π½Π° ΠΎΠ΄Π½Ρƒ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ Достигнув края поля, Π·ΠΌΠ΅ΠΉΠΊΠ° появляСтся с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны поля.

Рисунок 2.6 — Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ достиТСния края поля

Когда Π·ΠΌΠ΅ΠΉΠΊΠ° втыкаСтся Π² ΡΠ°ΠΌΡƒ сСбя, Π²Ρ‹ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚Π΅ (рисунок 2.7).

Рисунок 2.7 -ΠšΠΎΠ½Π΅Ρ† ΠΈΠ³Ρ€Ρ‹

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

Π’ Ρ…ΠΎΠ΄Π΅ выполнСния курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½Ρ‹

ΠΈ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Ρ‹ Π² ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ запискС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ вопросы:

— Π±Π°Π·ΠΎΠ²Ρ‹Π΅ элСмСнты управлСния, ΠΈΡ… ΡΠ²ΠΎΠΉΡΡ‚Π²Π° ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹;

— ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹;

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ знания ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅-ΠΈΠ³Ρ€Π° «Π—ΠΌΠ΅ΠΉΠΊΠ°».

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, А Π›ΠΈΡΡ‚ΠΈΠ½Π³ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

// Π—ΠΌΠ΅ΠΉΠΊΠ°.cpp.

# include

# include

# include

# include // Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, Π½ΡƒΠΆΠ½Π° для использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ kbhit () ΠΈ getch ()

using namespace std;

char main_color[] = «color ##»; // шаблон для Ρ†Π²Π΅Ρ‚Π°

int size; // Ρ€Π°Π·ΠΌΠ΅Ρ€ Π·ΠΌΠ΅ΠΉΠΊΠΈ

int X, Y; // Π² ΠΊΠ°ΠΊΡƒΡŽ сторону двиТСтся Π·ΠΌΠ΅ΠΉΠΊΠ°

int coordinates_x[1000], coordinates_y[1000]; // массивы, хранящиС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ частСй Ρ‚Π΅Π»Π° Π·ΠΌΠ΅ΠΉΠΊΠΈ

int food_x = -1, food_y = -1; // ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΅Π΄Ρ‹

char symbol; // Ρ…Ρ€Π°Π½ΠΈΡ‚ ASCII ΠΊΠΎΠ΄ Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ клавиши

char А[1000][1000]; // Ρ‚Π°Π±Π»ΠΈΡ†Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ происходит вся ΠΈΠ³Ρ€Π°

const int N = 15; // высота Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

const int M = 20; // ΡˆΠΈΡ€ΠΈΠ½Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

const int TIME = 100; // врСмя Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·ΠΌΠ΅ΠΉΠΊΠ° пСрСмСщаСтся Π½Π° ΠΎΠ΄Π½Ρƒ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ

void change_color ()

// функция измСнСния Ρ†Π²Π΅Ρ‚Π° консоли

{

char x = rand () % 16, y = rand () % 16;

if (x == y)

++y;

y %= 16;

if (x > 9)

x += 'A' - 10;

else

x += '0';

if (y > 9)

y += 'A' - 10;

else

y += '0';

// Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ€Π°Π½Π΄ΠΎΠΌΠ½Ρ‹Π΅ Ρ†Π²Π΅Ρ‚Π°

main_color[6] = x;

main_color[7] = y;

system (main_color);

// мСняСм Ρ†Π²Π΅Ρ‚

}

void change_direction ()

// функция, ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Π½Π°ΠΆΠ°Ρ‚ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ

{

symbol = _getch ();

switch (symbol)

{

case 119: if (X ≠ 1 || Y ≠ 0) { X = -1; Y = 0; } break;

case 97: if (X ≠ 0 || Y ≠ 1) { X = 0; Y = -1; } break;

case 115: if (X ≠ -1 || Y ≠ 0) { X = 1; Y = 0; } break;

case 100: if (X ≠ 0 || Y ≠ -1) { X = 0; Y = 1; } break;

case 32: change_color (); break;

default: break;

}

}

void show_table ()

// функция для Π²Ρ‹Π²ΠΎΠ΄Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

i == N + 1

void clear_snake_on_table ()

// ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Π»Π°ΡΡŒ Π·ΠΌΠ΅ΠΉΠΊΠ°

{

for (int i = 1; i <= size; ++i)

А[coordinates_x[i]][coordinates_y[i]] = ' ';

}

void show_snake_on_table ()

// ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π·ΠΌΠ΅ΠΉΠΊΠΈ

{

if (X == 1 && Y == 0) А[coordinates_x[1]][coordinates_y[1]] = 'v';

if (X == -1 && Y == 0) А[coordinates_x[1]][coordinates_y[1]] = '^';

if (X == 0 && Y == 1) А[coordinates_x[1]][coordinates_y[1]] = '>';

if (X == 0 && Y == -1) А[coordinates_x[1]][coordinates_y[1]] = '<';

// измСняСм Ρ‚ΠΈΠΏ Π³ΠΎΠ»ΠΎΠ²Ρ‹

for (int i = 2; i <= size; ++i)

А[coordinates_x[i]][coordinates_y[i]] = '8';

// красим Π·ΠΌΠ΅ΠΉΠΊΡƒ

}

bool game_over ()

// провСряСм, съСла Π»ΠΈ Π·ΠΌΠ΅ΠΉΠΊΠ° саму сСбя

{

for (int i = 2; i <= size; ++i)

if (coordinates_x[1] == coordinates_x[i] && coordinates_y[1] == coordinates_y[i]) return true;

// Ссли ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π³ΠΎΠ»ΠΎΠ²Ρ‹ Π·ΠΌΠ΅ΠΉΠΊΠΈ Ρ€Π°Π²Π½Ρ‹ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ части Ρ‚Π΅Π»Π° Π·ΠΌΠ΅ΠΉΠΊΠΈ, Ρ‚ΠΎ Π·ΠΌΠ΅ΠΉΠΊΠ° съСла саму сСбя

return false;

}

void check_coordinates ()

// провСряСм, Π½Π΅ Π²Ρ‹ΡˆΠ»Π° Π»ΠΈ Π·ΠΌΠ΅ΠΉΠΊΠ° Π·Π° ΠΏΠΎΠ»Π΅, Ссли Π΄Π° Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ Π΅Π΅ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ

{

if (coordinates_x[1] > N) coordinates_x[1] = 1;

if (coordinates_x[1] < 1) coordinates_x[1] = N;

if (coordinates_y[1] > M) coordinates_y[1] = 1;

if (coordinates_y[1] < 1) coordinates_y[1] = M;

}

void next_step ()

// функция пСрСмСщСния Π·ΠΌΠ΅ΠΉΠΊΠΈ

{

clear_snake_on_table ();

// чистим Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΎΡ‚ Π·ΠΌΠ΅ΠΉΠΊΠΈ

for (int i = size; i >= 2; —i)

{

coordinates_x[i] = coordinates_x[i — 1];

coordinates_y[i] = coordinates_y[i — 1];

}

// ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ³Π°Π΅ΠΌ Ρ‚Π΅Π»ΠΎ Π·ΠΌΠ΅ΠΉΠΊΠΈ

coordinates_x[1] += X;

coordinates_y[1] += Y;

// ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ³Π°Π΅ΠΌ Π³ΠΎΠ»ΠΎΠ²Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠΈ

check_coordinates ();

// провСряСм Π² ΠΏΠΎΡ€ΡΠ΄ΠΊΠ΅ Π»ΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹

if (coordinates_x[1] == food_x && coordinates_y[1] == food_y)

{

size++;

food_x = -1;

food_y = -1;

}

// Ссли Π³ΠΎΠ»ΠΎΠ²Π° Π·ΠΌΠ΅ΠΉΠΊΠΈ Ρ‚Π°ΠΌ ΠΆΠ΅ Π³Π΄Π΅ ΠΈ Π΅Π΄Π°, Ρ‚ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π·ΠΌΠ΅ΠΉΠΊΠΈ

show_snake_on_table ();

// рисуСм Π·ΠΌΠ΅ΠΉΠΊΡƒ

if (game_over () == true)

// Ссли змСя укусила сСбя

{

cout << «Vi proigrali! n» ;

system («pause»);

exit (0);

}

}

bool food_check ()

// функция ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π΅Π΄Ρ‹ Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅

{

if (food_x == -1 && food_y == -1) return false;

// Ссли ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΅Π΄Ρ‹ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ true

return true;

// Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях false

}

void place_food ()

// функция добавлСния Π΅Π΄Ρ‹ Π½Π° ΠΊΠ°Ρ€Ρ‚Ρƒ

{

srand (time (NULL));

for (int i = 1; i <= 9; ++i)

{

int x = rand (), y = rand ();

if (x < 0) x *= -1;

if (y < 0) y *= -1;

x %= (N + 1);

y %= (M + 1);

if (x == 0) ++x;

if (y == 0) ++y;

if (А[x][y] ≠ '8' && А[x][y] ≠ 'v' && А[x][y] ≠ '^' && А[x][y] ≠ '<' && А[x][y] ≠ '>')

{

food_x = x;

food_y = y;

А[x][y] = '+';

return;

}

}

// ставим Π² Ρ€Π°Π½Π΄ΠΎΠΌΠ½ΠΎΠ΅ мСсто Π΅Π΄Ρƒ

}

void standart_settings ()

// Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ установки

{

size = 1;

coordinates_x[1] = 5;

coordinates_y[1] = 5;

X = 0;

Y = 1;

// Π·ΠΌΠ΅ΠΉΠΊΠ° двиТСтся Π²ΠΏΡ€Π°Π²ΠΎ

}

int main ()

{

standart_settings ();

// Π·Π°Π΄Π°Π΅ΠΌ стандартныС настройки

while (1)

// бСсконСчный Ρ†ΠΈΠΊΠ»

{

if (_kbhit () == true)

// Ссли Π½Π°ΠΆΠ°Ρ‚Π° клавиша

change_direction ();

// ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ Π½Π°ΠΆΠ°Ρ‚ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ

next_step ();

// Π΄Π²ΠΈΠ³Π°Π΅ΠΌ Π·ΠΌΠ΅ΠΉΠΊΡƒ

if (food_check () == false)

place_food ();

// Ссли Π½Π΅Ρ‚ Π΅Π΄Ρ‹, Ρ‚ΠΎ ΡΡ‚Π°Π²ΠΈΠΌ Π΅Π΅

show_table ();

// рисуСм Π·ΠΌΠ΅ΠΉΠΊΡƒ

Sleep (TIME);

// «ΡƒΡΡ‹ΠΏΠ»ΡΠ΅ΠΌ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»

}

}

.ur

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