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

ГрафичСская ΠΈ программная рСализация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ слоТных структур Π΄Π°Π½Π½Ρ‹Ρ…

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

МоТно Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°Ρ… Ρ†Π΅Π»Ρ‹Ρ… чисСл, массивов символов ΠΈ.Ρ‚.Π΄. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π°ΠΆΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ массив, элСмСнты ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ — массивы (массив массивов), опрСдСляя, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы. Π›ΡŽΠ±ΠΎΠΉ массив Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ описан: послС ΠΈΠΌΠ΅Π½ΠΈ массива Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки, Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ стоит число, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ количСство элСмСнтов массива. НапримСр, запись int x; опрСдСляСт x… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ГрафичСская ΠΈ программная рСализация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ слоТных структур Π΄Π°Π½Π½Ρ‹Ρ… (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠœΠ˜ΠΠ˜Π‘Π’Π•Π Π‘Π’Π’Πž ΠžΠ‘Π ΠΠ—ΠžΠ’ΠΠΠ˜Π― И ΠΠΠ£ΠšΠ˜ Π Π•Π‘ΠŸΠ£Π‘Π›Π˜ΠšΠ˜ ΠšΠΠ—ΠΠ₯БВАН НАО «ΠΠ›ΠœΠΠ’Π˜ΠΠ‘ΠšΠ˜Π™ Π£ΠΠ˜Π’Π•Π Π‘Π˜Π’Π•Π’ Π­ΠΠ•Π Π“Π•Π’Π˜ΠšΠ˜ И Π‘Π’Π―Π—Π˜»

Π€Π°ΠΊΡƒΠ»ΡŒΡ‚Π΅Ρ‚ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ»

ΠšΠ°Ρ„Π΅Π΄Ρ€Π° «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы»

ОВЧЁВ ΠΏΠΎ Ρ€Π°ΡΡ‡Ρ‘Ρ‚Π½ΠΎ — графичСской Ρ€Π°Π±ΠΎΡ‚Π΅ № 2

ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ «ΠΠ»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅»

Π’Π΅ΠΌΠ°: «Π“рафичСская ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ рСализация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ слоТных структур Π΄Π°Π½Π½Ρ‹Ρ…»

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ № 19

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ» ст. Π³Ρ€. Π‘Π˜Π‘-12−2

НСчаСв Н.И.

Алматы 2013

1. ВСорСтичСская Ρ‡Π°ΡΡ‚ΡŒ

2. Π—Π°Π΄Π°Π½ΠΈΠ΅ А

2.1 Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ постановка Π·Π°Π΄Π°Ρ‡ΠΈ

2.2 ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

2.2.1 БловСсноС описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

2.2.2 Π‘Π»ΠΎΠΊ — схСма

2.2.3 ОписаниС ΠΈ ΡΡ…Π΅ΠΌΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса

2.3 ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

2.3.1 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° с ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ

2.3.2 Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

3. Π—Π°Π΄Π°Π½ΠΈΠ΅ Π‘

3.1 Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ постановка Π·Π°Π΄Π°Ρ‡ΠΈ

3.2 ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

3.2.1 БловСсноС описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

3.2.2 Π‘Π»ΠΎΠΊ — схСма

3.2.3 ОписаниС ΠΈ ΡΡ…Π΅ΠΌΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса

3.3 ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

3.3.1 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

3.3.2 Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, А ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π‘ Бписок использованной Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π‘ΠΈ — стандартизированный ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ язык программирования, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π² Π½Π°Ρ‡Π°Π»Π΅ 1970;Ρ… Π³ΠΎΠ΄ΠΎΠ² сотрудниками Bell Labs КСном Вомпсоном ΠΈ Π”Сннисом Π ΠΈΡ‚Ρ‡ΠΈ. Π‘ΠΈ Π±Ρ‹Π» создан для использования Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС UNIX. Π‘ Ρ‚Π΅Ρ… ΠΏΠΎΡ€ ΠΎΠ½ Π±Ρ‹Π» пСрСнСсён Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы ΠΈ ΡΡ‚Π°Π» ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… языков программирования. Π‘ΠΈ Ρ†Π΅Π½ΡΡ‚ Π·Π° Π΅Π³ΠΎ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ. Он ΡΠ²Π»ΡΠ΅Ρ‚ся самым популярным языком для создания систСмного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π•Π³ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ для создания ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π‘ΠΈ Π½Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚ывался для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², ΠΎΠ½ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обучСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. Π’ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΌ синтаксис языка Π‘ΠΈ ΡΡ‚Π°Π» основой для ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… языков.

Π―Π·Ρ‹ΠΊ программирования БИ — это ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык с Π±ΠΎΠ³Π°Ρ‚Ρ‹ΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹ΠΌ способом записи Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Π―Π·Ρ‹ΠΊ C ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ†Π΅Π»Ρ‹Π΅, вСщСствСнныС числа ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Ρ‹ (Π»ΠΈΡ‚Π΅Ρ€Ρ‹). Π―Π·Ρ‹ΠΊ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ созданиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ². Π’ ΡΠ·Ρ‹ΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ стандартныС Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… int, char, float, double; ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ массивы, структуры (записи), Ρ„Π°ΠΉΠ»Ρ‹; имССтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ конструирования ΠΎΡ‡Π΅Ρ€Π΅Π΄Π΅ΠΉ, списков.

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΎΡ‚Ρ‡Π΅Ρ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ прСдставлСно Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² Π·Π°Π΄Π°Ρ‡: ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ соотвСтствСнно. Π‘ΡƒΠ΄Π΅Ρ‚ прСдставлСно ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² Ρ„ΠΎΡ€ΠΌΠ΅ словСсного описания, Π±Π»ΠΎΠΊ-схСмы, ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Π‘ΠΈ. Π’Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ осущСствлСна ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ MS Excel.

1.

1. ВСорСтичСская Ρ‡Π°ΡΡ‚ΡŒ

ЦСль. Π—Π°ΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒ Π½Π°Π²Ρ‹ΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Π‘ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ слоТных структур Π΄Π°Π½Π½Ρ‹Ρ…: ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. ΠŸΡ€ΠΈΠΎΠ±Ρ€Π΅ΡΡ‚ΠΈ Π½Π°Π²Ρ‹ΠΊΠΈ программирования с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ.

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ. ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ задания ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ тСорСтичСский ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ расчСтно-графичСской Ρ€Π°Π±ΠΎΡ‚Ρ‹, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊ-схСму ΠΈ ΠΎΡ„ΠΎΡ€ΠΌΠΈΡ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚ Π² ΡΠΎΠΎΡ‚вСтствии с Ρ‚рСбованиями, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ Π² Π½Π°ΡΡ‚оящих мСтодичСских указаниях.

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

БущСствуСт 3 Π²ΠΈΠ΄Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²:

— Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ

— Ρ€Π°Π·Π²Π΅Ρ‚Π²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ

— Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… — программная Π΅Π΄ΠΈΠ½ΠΈΡ†Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ мноТСство ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… логичСски связанных Π΄Π°Π½Π½Ρ‹Ρ… Π² Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ΅.

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

БтатичСскиС — ΠΊ ΡΡ‚ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅ относят массивы, мноТСства, записи, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

ΠŸΠΎΠ»ΡƒΡΡ‚Π°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ — это стСки, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ, Π΄Π΅ΠΊΠΈ, Π΄Π΅Ρ€Π΅Π²Π°

ДинамичСскиС — Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Π΅ ΠΈ Ρ€Π°Π·Π²Π΅Ρ‚Π²Π»Π΅Π½Π½Ρ‹Π΅ связныС списки, Π³Ρ€Π°Ρ„Ρ‹, Π΄Π΅Ρ€Π΅Π²Π°.

Массив прСдставляСт собой ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ°.

МоТно Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°Ρ… Ρ†Π΅Π»Ρ‹Ρ… чисСл, массивов символов ΠΈ.Ρ‚.Π΄. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π°ΠΆΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ массив, элСмСнты ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ — массивы (массив массивов), опрСдСляя, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы. Π›ΡŽΠ±ΠΎΠΉ массив Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ описан: послС ΠΈΠΌΠ΅Π½ΠΈ массива Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки [], Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ стоит число, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ количСство элСмСнтов массива. НапримСр, запись int x[10]; опрСдСляСт x ΠΊΠ°ΠΊ массив ΠΈΠ· 10 Ρ†Π΅Π»Ρ‹Ρ… чисСл. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ°Ρ€ скобок, ΠΊΠ°ΠΊΠΎΠ²Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ массива, Π° Ρ‡ΠΈΡΠ»ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ скобок ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΌΡƒ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΡŽ. НапримСр, описаниС Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива выглядит Ρ‚Π°ΠΊ: int a[2][5]. Π’Π°ΠΊΠΎΠ΅ описаниС ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ ΠΈΠ· 2 строк ΠΈ 5 столбцов. Для обрщСния ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ элСмСнту массива ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π΅Π³ΠΎ имя ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки (для ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива — нСсколько индСксов, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки): a[1][3], x[i] a[0][k+2]. Π˜Π½Π΄Π΅ΠΊΡΡ‹ массива Π² Π‘ΠΈ Π²ΡΠ΅Π³Π΄Π° Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с 0, Π° Π½Π΅ с 1, Ρ‚. Π΅. описаниС int x[5]; ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Π΅Ρ‚ элСмСнты x[0], x[1], x[2], x[3], x[4], x[5].

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ случаС объявлСниС массива ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

Ρ‚ΠΈΠΏ_Π΄Π°Π½Π½Ρ‹Ρ… имя_ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ[<�количСство_элСмСнтов>] = <�список, элСмСнтов, массива>

int arr[100];

int a[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

char ch[] = {'R','u','b','y','D','e','v','.','r','u'};

ДинамичСским называСтся массив, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

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

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ — ΡΡ‚ΠΎ пСрСмСнная, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся адрСс Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ) Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Подобно Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ пСрСмСнная Ρ‚ΠΈΠΏΠ° char ΠΈΠΌΠ΅Π΅Ρ‚ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ значСния символ, Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ Ρ‚ΠΈΠΏΠ° int — цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, пСрСмСнная Ρ‚ΠΈΠΏΠ° указатСля ΠΈΠΌΠ΅Π΅Ρ‚ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ значСния адрСс ячСйки ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти. ДопустимыС значСния для ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ-указатСля — мноТСство адрСсов ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ языка C.

Β· ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ срСдством, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… Π² Π½Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²;

Β· ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ выполняСтся динамичСскоС распрСдСлСниС памяти;

Β· ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ программирования;

Β· ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ динамичСских структур Π΄Π°Π½Π½Ρ‹Ρ… (Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Π΄Π΅Ρ€Π΅Π²ΡŒΡ, связныС списки).

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ², с ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π² ΡΠ·Ρ‹ΠΊΠ΅ Π‘ΠΈ ΡΠ²ΡΠ·Ρ‹Π²Π°Π΅Ρ‚ся Ρ‚ΠΈΠΏ Ρ‚ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ ΡΡΡ‹Π»Π°Π΅Ρ‚ся. Для описания ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ опСрация косвСнной адрСсации *.

ΠžΠ±Ρ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° объявлСния указатСля:

Ρ‚ΠΈΠΏ *имя;

НапримСр:

int *p1;

char *ch2;

float *fl1;

ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ указатСля тСсно связано с ΠΏΠΎΠ½ΡΡ‚ΠΈΠ΅ΠΌ адрСса ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π’ C Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ опСрация, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ адрСс любой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ: &p — ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ адрСса, Π³Π΄Π΅ p — ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ являСтся адрСс ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ p.

Над указатСлями ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ 5 основных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

1. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ адрСса указатСля: &p, Π³Π΄Π΅ p — ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ (&p — адрСс ячСйки, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ находится ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ).

2. ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅. Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ адрСс ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ p=&q, Π³Π΄Π΅ p — ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, q — ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

3. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ значСния, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ссылаСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ: *p (опСрация косвСнной адрСсации).

4. Π£Π²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ (ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅) указатСля. Π£Π²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ выполняСтся ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния (+), Ρ‚Π°ΠΊ ΠΈ Ρ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° (++). УмСньшСниС — с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ вычитания (-) Π»ΠΈΠ±ΠΎ Π΄Π΅ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° (—).

НапримСр, ΠΏΡƒΡΡ‚ΡŒ p1 — ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, Ρ‚ΠΎΠ³Π΄Π° Ρ€1++ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π°:

a) 1 Π±Π°ΠΉΡ‚, Ссли *p1 ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ char;

b) 4 Π±Π°ΠΉΡ‚Π°, Ссли *p1 ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int (Π² 32 разрядной ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС) ΠΈΠ»ΠΈ 2 Π±Π°ΠΉΡ‚Π° (Π² 16 разрядной ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС);

c) 4 Π±Π°ΠΉΡ‚Π°, Ссли *p1 ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ float.

5. Π Π°Π·Π½ΠΎΡΡ‚ΡŒ Π΄Π²ΡƒΡ… ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ. ΠŸΡƒΡΡ‚ΡŒ Ρ€1 ΠΈ Ρ€2 — ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ°. МоТно ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΠΎΡΡ‚ΡŒ Ρ€1 ΠΈ Ρ€2, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ расстоянии Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° находятся элСмСнты массива.

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

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

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

Ѐункция

Π‘Π»ΠΎΠΊ Π½Π°Ρ‡Π°Π»ΠΎ-ΠΊΠΎΠ½Π΅Ρ† (пуск-остановка)

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π²Ρ…ΠΎΠ΄ ΠΈΠ· Π²Π½Π΅ΡˆΠ½Π΅ΠΉ срСды ΠΈΠ»ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· Π½Π΅Ρ‘ (Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ частоС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅? Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ† ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹). Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹ записываСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ дСйствиС.

Π‘Π»ΠΎΠΊ дСйствия

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

ЛогичСский Π±Π»ΠΎΠΊ (Π±Π»ΠΎΠΊ условия)

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

ΠŸΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ процСсс

Π‘ΠΈΠΌΠ²ΠΎΠ» ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ процСсса, состоящСго ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π”Π°Π½Π½Ρ‹Π΅ (Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄)

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„ΠΎΡ€ΠΌΡƒ, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΡƒΡŽ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ (Π²Π²ΠΎΠ΄) ΠΈΠ»ΠΈ отобраТСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ (Π²Ρ‹Π²ΠΎΠ΄).

Π“Ρ€Π°Π½ΠΈΡ†Π° Ρ†ΠΈΠΊΠ»Π°

Π‘ΠΈΠΌΠ²ΠΎΠ» состоит ΠΈΠ· Π΄Π²ΡƒΡ… частСй? соотвСтствСнно, Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ† Ρ†ΠΈΠΊΠ»Π°? ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, выполняСмыС Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ. Условия Ρ†ΠΈΠΊΠ»Π° ΠΈ ΠΏΡ€ΠΈΡ€Π°Ρ‰Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ символа Π½Π°Ρ‡Π°Π»Π° ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ†Π° Ρ†ΠΈΠΊΠ»Π°? Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π°.

Π‘ΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒ

Π‘ΠΈΠΌΠ²ΠΎΠ» ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π²Ρ…ΠΎΠ΄ Π² Ρ‡Π°ΡΡ‚ΡŒ схСмы ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠΉ части этой схСмы. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΠ±Ρ€Ρ‹Π²Π° Π»ΠΈΠ½ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΡ Π΅Ρ‘ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС.

2. Π—Π°Π΄Π°Π½ΠΈΠ΅ А

Π‘ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊ схСму ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ массива Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° случайных чисСл. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ двумя способами: 1) осущСствляя доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ массива с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ индСксов; 2) осущСствляя доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ массива с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ.

2.1 Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ постановка Π·Π°Π΄Π°Ρ‡ΠΈ

Π”Π°Π½ массив A[N]. ΠžΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ цикличСский сдвиг элСмСнтов массива Π²ΠΏΡ€Π°Π²ΠΎ Π½Π° k ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ, Π³Π΄Π΅ k — цСлая Ρ‡Π°ΡΡ‚ΡŒ срСднСго арифмСтичСского значСния Π½Π΅Ρ‡Ρ‘Ρ‚Π½Ρ‹Ρ… элСмСнтов массива A[N].

2.2 ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

2.2.1 БловСсноС описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

1. Начало Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

2. Π—Π°Π΄Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ массива, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ константС N ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

3. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ массив A[N] случайными числами.

4. ВывСсти элСмСнты массива A[N].

5. ΠžΠ±Π½ΡƒΠ»ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ S ΠΈ r.

6. ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΎΡ‚ i=1; N; 1.

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°:

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ: Ссли Π°[i]%2=0, Ρ‚ΠΎ ΡΡƒΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌ Π½Π΅Ρ‡Ρ‘Ρ‚Π½Ρ‹Π΅ элСмСнты массива, Ρ‚. Π΅. S=S+Π°[i], ΠΈ Ρ‡ΠΈΡΠ»ΠΎ Π½Π΅Ρ‡Ρ‘Ρ‚Π½Ρ‹Ρ… элСмСнтов ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π½Π° 1, Ρ‚. Π΅. r=r+1, ΠΈΠ½Π°Ρ‡Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡˆΠ°Π³Ρƒ Ρ†ΠΈΠΊΠ»Π°.

7. Находим Ρ†Π΅Π»ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ срСднСго арифмСтичСского значСния Π½Π΅Ρ‡Ρ‘Ρ‚Π½Ρ‹Ρ… элСмСнтов массива A[N], Ρ‚. Π΅. k: k=abs (S/r).

8. ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΎΡ‚ i=1; k; 1.

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°:

a. Π—Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ послСдний элСмСнт f=a[N-1].

b. ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΎΡ‚ j=N; 1; -1.

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°: ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ элСмСнту ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ, Ρ‚. Π΅.

a[j]=a[j-1].

c. По ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ j ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ элСмСнту ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ послСднСго, Ρ‚. Π΅. a[1]=a[N-1] ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Ρ†ΠΈΠΊΠ»Ρƒ ΠΏΠΎ i.

9. ВывСсти элСмСнты массива a[i].

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

2.2.2 Π‘Π»ΠΎΠΊ — схСма

2.2.3 ОписаниС ΠΈ ΡΡ…Π΅ΠΌΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса

1. ΠŸΡ€ΠΈ запускС Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π³Π»Π°Π²Π½ΠΎΠ΅ мСню ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Она Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Ras4etno-grafi4eska9 rabota #2 zadanie A

=================================

2. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ввСсти Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ массива, послС Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ сгСнСрированный массив, ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ элСмСнты массива ΡƒΠΆΠ΅ с Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π΅ΡΠΊΠΈΠΌ сдвигом ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π·Π°Π½ΠΎΠ²ΠΎ.

Razmernost' massiva A[N]

Vvedite N

N=

Sgenerirovanniy massiv

sdvig elementov massiva a[n] na k poziciy

k-celaya chast srednego arifmeti4eskogo ne4etnyh 4isel

Vichislit' zanovo?

(esli da t=1,esli net t=0)

3. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ Π²Ρ‹Π±ΠΎΡ€Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 2. Если Π²Ρ‹ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘Ρ‚ ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 4.

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

=================================

****************************************

==Vipolnil Nechayev Nikita Igorevi4==

=======Student gryppi BIS-12−2=======

****************************************

***************************************

==Proveril k.t.n. docent==

==_______________Ni A.G.==

=="" __" «____________2013==

***************************************

5. На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строчкС Π±ΡƒΠ΄Π΅Ρ‚ надпись

Dl9 zaverweni9 nagmite klaviwu

Ras4etno-grafi4eska9 rabota #2 zadanie A

=================================

Razmernost' massiva A[N]

Vvedite N

N=

Sgenerirovanniy massiv

sdvig elementov massiva a[n] na k poziciy

k-celaya chast srednego arifmeti4eskogo ne4etnyh 4isel

Vichislit' zanovo?

(esli da t=1,esli net t=0)

=================================

****************************************

==Vipolnil Nechayev Nikita Igorevi4==

=======Student gryppi BIS-12−2=======

****************************************

***************************************

==Proveril k.t.n. docent==

==_______________Ni A.G.==

=="" __" «____________2013==

***************************************

Dl9 zaverweni9 nagmite klaviwu

2.3 ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

2.3.1 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° с ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ:

#include

#include

#include

#include

#include

int main ()

{

int k, N, S, r, i, t, f, j;

int a[N];

float b;

puts («tt Ras4etno-grafi4eska9 rabota #2 zadanie A»);

puts («tt ===========================================»);

printf («Razmernost' massiva A[N]»);

m1:printf («n Vvedite NnN=»);

scanf («%d» ,&N);

S=0;

r=0;

for (i=0;i

{

a[i]=rand ()%10−5;

}

printf («n Sgenerirovanniy massivn»);

for (i=0;i

printf («%4d», a[i]);

for (i=0;i

{

b=a[i]%2;

if (b≠0)

{

r=r+1;

S=S+a[i];

}

}

k=abs (S/r);

for (i=0;i

{

f=a[N-1];

for (j=N-1;j>0;j—)

a[j]=a[j-1];

a[0]=f;

}

printf («n n sdvig elementov massiva a[n] na %d poziciy n», k);

for (i=0;i

printf («%4d», a[i]);

puts («n k-celaya chast srednego arifmeti4eskogo ne4etnyh 4isel»);

printf («n Vichislit' zanovo? n (esli da t=1,esli net t=0)nt=»);

scanf («%d» ,&t);

if (t>0)

{printf (««);goto m1;}

if (t<1)

puts («tt ===========================================»);

puts («****************************************»);

puts («==Vipolnil Nechayev Nikita Igorevi4==»);

puts («=======Student gryppi BIS-12−2=======»);

puts («****************************************»);

puts («***************************************»);

puts («==Proveril k.t.n. docent==»);

puts («==_______________Ni A.G.==»);

puts («==»" __" «____________2013==»);

puts («***************************************»);

printf («Dl9 zaverweni9 nagmite klaviwu «);

getch (); /* Zadergka do nagati9 luboi klaviwi */

return 0;

}

Π‘ указатСлями:

#include

#include

#include

#include

#include

int main ()

{

int k, N, S, r, i, t, f, j,*pa,*pb,*p;

int a[N];

float b;

puts («tt Ras4etno-grafi4eska9 rabota #2 zadanie A»);

puts («tt ===========================================»);

printf («Razmernost' massiva A[N]»);

m1:printf («n Vvedite NnN=»);

scanf («%d» ,&N);

S=0;

r=0;

pa=&a[0];

for (i=0;i

{

*pa=rand ()%10−5;

}

pa=&a[0];

printf («n Sgenerirovanniy massivn»);

for (i=0;i

printf («%4d» ,*pa++);

pa=&a[0];

for (i=0;i

{

b=*pa%2;

++pa;

if (b≠0)

{

r=r+1;

S=S+*pa;

}

}

k=abs (S/r);

for (i=0;i

{

pb=&a[9];

p=&a[0];

f=*pb;

for (j=0;j

*pb=*(—pb);

*p=f;

p=&a[0];

pb=&a[9];

}

printf («n n sdvig elementov massiva a[n] na %d poziciy n», k);

for (i=0;i

pb=&a[0];

printf («%4d» ,*pb++);

puts («n k-celaya chast srednego arifmeti4eskogo ne4etnyh 4isel»);

printf («n Vichislit' zanovo? n (esli da t=1,esli net t=0)nt=»);

scanf («%d» ,&t);

if (t>0)

{printf (««);goto m1;}

if (t<1)

puts («tt ===========================================»);

puts («****************************************»);

puts («==Vipolnil Nechayev Nikita Igorevi4==»);

puts («=======Student gryppi BIS-12−2=======»);

puts («****************************************»);

puts («***************************************»);

puts («==Proveril k.t.n. docent==»);

puts («==_______________Ni A.G.==»);

puts («==»" __" «____________2013==»);

puts («***************************************»);

printf («Dl9 zaverweni9 nagmite klaviwu «);

getch (); /* Zadergka do nagati9 luboi klaviwi */

return 0;

2.3.2 Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

2.

3. Π—Π°Π΄Π°Π½ΠΈΠ΅ Π‘

Π‘ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊ схСму ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° случайных чисСл. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ двумя способами: 1) осущСствляя доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ массива с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ индСксов; 2) осущСствляя доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ массива с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ.

3.1 Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ постановка Π·Π°Π΄Π°Ρ‡ΠΈ

Π”Π°Π½Π° цСлочислСнная квадратная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ:

1) Π‘ΡƒΠΌΠΌΡƒ элСмСнтов Π² Ρ‚Π΅Ρ… строках, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов.

2) ΠœΠΈΠ½ΠΈΠΌΡƒΠΌ срСди сумм элСмСнтов Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π΅ΠΉ, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

3.2 ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

3.2.1 БловСсноС описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

1. Начало Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

2. Π—Π°Π΄Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

3. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ массив a[n][m] случайными числами.

4. ВывСсти элСмСнты массива a[n][m].

5. ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΎΡ‚ i=1; m; 1.

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ i:

5.1. ΠžΠ±Π½ΡƒΠ»ΠΈΡ‚ΡŒ сумму sum=0.

5.2. ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΎΡ‚ j=1; n; 1.

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ j:

5.2.1. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ: Ссли a[i][j]>=0, Ρ‚ΠΎ ΡΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнты строки, ΠΈΠ½Π°Ρ‡Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡˆΠ°Π³Ρƒ Ρ†ΠΈΠΊΠ»Π°.

5.3. По ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ: Ссли j=n, Ρ‚ΠΎ Π²Ρ‹Π²Π΅ΡΡ‚ΠΈ сумму элСмСнтов Π² Ρ‚Π΅Ρ… строках, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов.

5.4. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡˆΠ°Π³Ρƒ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ i.

6. ΠœΠΈΠ½ΠΈΠΌΡƒΠΌ сумм Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π΅ΠΉ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ: min=a[0][n-1].

7. ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΎΡ‚ i=1; m; 1.

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ i:

7.1. Π‘ΡƒΠΌΠΌΠ° элСмСнтов Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π΅ΠΉ, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ с Π»Π΅Π²ΠΎΠΉ стороны Ρ€Π°Π²Π½ΠΎ суммС элСмСнтов Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π΅ΠΉ, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ с ΠΏΡ€Π°Π²ΠΎΠΉ стороны ΠΈ Ρ€Π°Π²Π½ΠΎ 0, Ρ‚. Π΅. t1=t2=0.

7.2. ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΎΡ‚ j=0; n; 1.

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ j:

7.2.1. Π‘ΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнты Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π΅ΠΉ, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ с Π»Π΅Π²ΠΎΠΉ стороны.

7.2.2. Π‘ΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнты Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π΅ΠΉ, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ с ΠΏΡ€Π°Π²ΠΎΠΉ стороны.

7.3. По ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ j ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ: Ссли t1

7.3.1. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡˆΠ°Π³Ρƒ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ i.

8. ВывСсти ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ срСди сумм элСмСнтов Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π΅ΠΉ, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

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

3.2.2

3.2.2 Π‘Π»ΠΎΠΊ — схСма:

3.2.3

3.2.3 ОписаниС ΠΈ ΡΡ…Π΅ΠΌΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса

1. ΠŸΡ€ΠΈ запускС Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ появится Π³Π»Π°Π²Π½ΠΎΠ΅ мСню ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Она Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Ras4etno-grafi4eska9 rabota #2 zadanie B

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

Sgenerirovanna9 matrica

Rezul’tat pervoy 4asti zadani9

Summa elementov stroki

Rezul’tat vtoroy 4asti zadani9

Minimum Summ

Vichislit' zanovo?

(esli da t=1,esli net t=0)

3. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ Π²Ρ‹Π±ΠΎΡ€Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘Ρ‚ ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 2. Если Π²Ρ‹ Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘Ρ‚ ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 4.

4. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ с Π»Π΅Π²ΠΎΠΉ стороны Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΈ ΡΡ‚ΡƒΠ΄Π΅Π½Ρ‚Π°, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ²ΡˆΠ΅Π³ΠΎ Π΄Π°Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ. Π‘ ΠΏΡ€Π°Π²ΠΎΠΉ стороны ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ прСподаватСля, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ²ΡˆΠ΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

========================================

****************************************

==Vipolnil Nechayev Nikita Igorevi4==

=======Student gryppi BIS-12−2=======

****************************************

***************************************

==Proveril k.t.n. docent==

==_______________Ni A.G.==

=="" __" «____________2013==

***************************************

5. На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строчкС Π±ΡƒΠ΄Π΅Ρ‚ надпись

Dl9 zaverweni9 nagmite klaviwu

Ras4etno-grafi4eska9 rabota #2 zadanie B

=================================

Sgenerirovanna9 matrica

Rezul’tat pervoy 4asti zadani9

Summa elementov stroki

Rezul’tat vtoroy 4asti zadani9

Minimum Summ

Vichislit' zanovo?

(esli da t=1,esli net t=0)

========================================

****************************************

==Vipolnil Nechayev Nikita Igorevi4==

=======Student gryppi BIS-12−2=======

****************************************

***************************************

==Proveril k.t.n. docent==

==_______________Ni A.G.==

=="" __" «____________2013==

***************************************

Dl9 zaverweni9 nagmite klaviwu

3.3 ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

3.3.1 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° с индСксами

#include

#include

#include

#include

#include

#define m 8

#define n 8

int main ()

{

int i, j, t1,t2,sum, min, t;

int a[m][n];

puts («tt Ras4etno-grafi4eska9 rabota #2 zadanie B»);

puts («tt ===========================================»);

m1:for (i=0; i

for (j=0; j

a[i][j]=rand ()%10−1;

printf («n Sgenerirovanna9 matrican»);

for (i=0; i

{

for (j=0; j

printf («%4d», a[i][j]);

printf («n»);

}

printf («n ttt Rezul’tat pervoy 4asti zadani9»);

printf («nn»);

for (i=0; i

{

sum=0;

for (j=0; j

{

if (a[i][j]>=0)

sum+=a[i][j];

else

break;

}

if (j==n)

printf («Summa elementov stroki #%d=%dn», i+1,sum);

}

printf («n ttt Rezul’tat vtoroy 4asti zadani9»);

min=a[0][n-1];

for (i=1; i

{

t1=t2=0;

for (j=0; j

{

t1+=a[i+j][j];

t2+=a[j][i+j];

}

if (t1

min=t1;

if (t2

min=t2;

}

printf («n Minimum Summ= %d», min);

printf («n Vichislit' zanovo? n (esli da t=1,esli net t=0)nt=»);

scanf («%d» ,&t);

if (t>0)

{printf (««);goto m1;}

if (t<1)

puts («tt ===========================================»);

puts («****************************************»);

puts («==Vipolnil Nechayev Nikita Igorevi4==»);

puts («=======Student gryppi BIS-12−2=======»);

puts («****************************************»);

puts («***************************************»);

puts («==Proveril k.t.n. docent==»);

puts («==_______________Ni A.G.==»);

puts («==»" __" «____________2013==»);

puts («***************************************»);

printf («Dl9 zaverweni9 nagmite klaviwu «);

getch (); /* Zadergka do nagati9 luboi klaviwi */

return 0;

}

Π‘ указатСлями

#include

#include

#include

#include

#include

#define m 8

#define n 8

int main ()

{

int i, j, t1,t2,sum, min, t;

int a[m][n];

int *mat;

puts («tt Ras4etno-grafi4eska9 rabota #2 zadanie B»);

puts («tt ===========================================»);

mat=&a[0][0];

m1:for (i=0; i

for (j=0; j

{

*mat=rand ()%10−1;

mat++;

}

mat-=n*m;

printf («n Sgenerirovanna9 matrican»);

for (i=0; i

{

for (j=0; j

{

printf («%4d» ,*mat);

mat++;

}

printf («n»);

}

printf («n ttt Rezul’tat pervoy 4asti zadani9»);

printf («nn»);

mat=&a[0][0];

for (i=0; i

{

sum=0;

for (j=0; j

{

if (*mat>=0)

sum+=*mat;

else

break;

}

if (j==n)

printf («Summa elementov stroki #%d=%dn», i+1,sum);

}

printf («n ttt Rezul’tat vtoroy 4asti zadani9»);

min=a[0][n-1];

for (i=1; i

{

t1=t2=0;

for (j=0; j

{

t1+=*(mat+i*m+j);

t2+=*(mat+j*m+i);

}

if (t1

min=t1;

if (t2

min=t2;

}

printf («n Minimum Summ= %d», min);

printf («n Vichislit' zanovo? n (esli da t=1,esli net t=0)nt=»);

scanf («%d» ,&t);

if (t>0)

{printf (««);goto m1;}

if (t<1)

puts («tt ===========================================»);

puts («****************************************»);

puts («==Vipolnil Nechayev Nikita Igorevi4==»);

puts («=======Student gryppi BIS-12−2=======»);

puts («****************************************»);

puts («***************************************»);

puts («==Proveril k.t.n. docent==»);

puts («==_______________Ni A.G.==»);

puts («==»" __" «____________2013==»);

puts («***************************************»);

printf («Dl9 zaverweni9 nagmite klaviwu «);

getch (); /* Zadergka do nagati9 luboi klaviwi */

return 0;

}

3.3.2

3.3.2 Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

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

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

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

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

— iostream — Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» с ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ, функциями ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° Π² ΡΠ·Ρ‹ΠΊΠ΅ программирования C++ (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ Ρ†Π²Π΅Ρ‚ system («color 1a»); Ρ‡Π΅Ρ€Π΅Π· эту Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ).

— (ΠΎΡ‚ Π°Π½Π³Π». console input-output — ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄) — Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для создания тСкстового интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π°Ρ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅-Π²Ρ‹Π²ΠΎΠ΄Π΅ ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Π±ΠΎΡ€ Π±ΡƒΠΊΠ²Π΅Π½Π½ΠΎ-Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… символов).

— Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка программирования Π‘, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ для выполнСния простых матСматичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

— Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π² ΡΠ΅Π±Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ памяти, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ процСсса выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, прСобразования Ρ‚ΠΈΠΏΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π²ΠΏΠΎΠ»Π½Π΅ совмСстим с C++ ΠΈ ΠΈΠ·Π²Π΅ΡΡ‚Π΅Π½ Π² Π½Ρ‘ΠΌ ΠΊΠ°ΠΊ cstdlib. НазваниС «stdlib» Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ΡΡ ΠΊΠ°ΠΊ «standard library» (стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°). Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ rand.

— Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка программирования БИ, содСрТащий Ρ‚ΠΈΠΏΡ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Ρ‚ΠΎΠΉ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС этот ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ слуТит для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ массив ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· гСнСрировался ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ.

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

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

AFCE — составлСниС Π±Π»ΠΎΠΊ-схСм.

Microsoft Visual Studio, Dev C++ - срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Бписок использованной Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

1. Π‘Ρ‚Π΅Ρ„Π°Π½ Π . Дэвис «C++».

2. Π‘. Π’. Π‘ΠΈΠΌΠΎΠ½ΠΎΠ²ΠΈΡ‡ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ°: Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ курс». — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2003.

3. ΠžΠ²Π΅Ρ€Π»Π΅Π½Π΄ Π‘. «C++».

4. http://ru.wikipedia.org/wiki/Π‘ΠΈ_(язык_программирования)

5. http://lord-n.narod.ru/download/books/walla/programming/Spr_po_C/

6. ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½ Π‘., Π ΠΈΡ‚Ρ‡ΠΈ Π”. Π―Π·Ρ‹ΠΊ программирования Π‘ΠΈ. — 2-Π΅ ΠΈΠ·Π΄. — Πœ.: Π’ΠΈΠ»ΡŒΡΠΌΡ, 2007. — Π‘. 304.

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