Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

Как ΡΡ‚Π°Ρ‚ΡŒ программистом

ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ основам программирования Π½Π° C для Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ².

Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Ρ‹

ПослСдниС новости

YoungCoder Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈ Π½Π° StepikΠ΅. Π—Π°ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ: https://vk.cc/75rISy

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° курс, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π‘Ρ‚Π΅ΠΏΠΈΠΊΠ΅: https://vk.cc/75rIC4

Π­Ρ‚ΠΎ моя личная ссылка-ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° Stepik для вас. Π Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΡΡΡŒ ΠΏΠΎ этой ссылкС, Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡΡΡŒ Π½Π° курсы ΠΈ Ρ€Π΅ΡˆΠ°Ρ Π·Π°Π΄Π°Ρ‡ΠΈ, Π’Ρ‹ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚Π΅ Π°Π²Ρ‚ΠΎΡ€Ρƒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ сайта ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ участиС Π² конкурсС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Stepik! ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ конкурса здСсь: https://vk.cc/75rKuS

Π²ΠΎΡΠΊΡ€Π΅ΡΠ΅Π½ΡŒΠ΅, 27 октября 2013 Π³.

ЗанятиС 19. Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы.

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ этого ΡƒΡ€ΠΎΠΊΠ° «Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы».

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив?

Как Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌ массивом?

Как Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ элСмСнтом массива.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы?

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π² коммСнтариях поТалуйста, понятСн Π»ΠΈ Π²Π°ΠΌ этот ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ»ΠΈ Π»ΡƒΡ‡ΡˆΠ΅ Π΅Π³ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°ΡΠΏΠΈΡΠ°Ρ‚ΡŒ?

Если этот ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» каТСтся Π²Π°ΠΌ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ, расскаТитС ΠΎ Π½Π΅ΠΌ Π΄Ρ€ΡƒΠ·ΡŒΡΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ основных ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтСй, располоТСнныС Π½ΠΈΠΆΠ΅.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

ΠŸΡ€ΠΈ этом Ρ‚Π°Π±Π»ΠΈΡ‡ΠΊΠ° ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π° ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ ΠΎΠΊΠ½Π° Π²Ρ‹Π²ΠΎΠ΄Π°.

Π“ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с Π½ΠΈΠΊΠΎΠΌ «Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ». Π—Π° проявлСнноС упорство ΠΈ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ»ΡŽΠ±ΠΈΠ΅, ΠΈ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ²ΡˆΠΈΠΉ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ практичСскоС Π·Π°Π΄Π°Π½ΠΈΠ΅, Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ награТдаСтся ΠΏΠ΅Ρ‡Π΅Π½ΡŒΠΊΠΎΠΉ:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы

ОбъявлСниС, Π²Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива

ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (массивы массивов) Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ массивами. Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ индСкс элСмСнта ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ строки, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ индСкс – Π½ΠΎΠΌΠ΅Ρ€ столбца. НапримСр, массив A[3][4] Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· 12 элСмСнтов ΠΈ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅

Для считывания, Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° экран ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ†ΠΈΠΊΠ»Ρ‹. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» – ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ индСксу (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎ всСм строкам), Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ†ΠΈΠΊΠ» – ΠΏΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ индСксу, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎ всСм элСмСнтам Π² строках (столбцам). НапримСр, вывСсти Π½Π° экран Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, раздСляя элСмСнты Π² строкС ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

А ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ простого Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° (массив вводится ΠΏΠΎ строкам, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² порядкС, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ):

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива

Π”Π°Π½Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΠ»ΠΎΡ…, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ выполняСт ΠΎΠ΄Π½Ρƒ ΠΈΠ»ΠΈ Π΄Π²Π΅ инструкции if для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта. Если ΠΌΡ‹ услоТним Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, Ρ‚ΠΎ ΠΌΡ‹ смоТСм ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π±Π΅Π· условных инструкций.

Π‘Π½Π°Ρ‡Π°Π»Π° Π·Π°ΠΏΠΎΠ»Π½ΠΈΠΌ Π³Π»Π°Π²Π½ΡƒΡŽ диагональ, для Ρ‡Π΅Π³ΠΎ Π½Π°ΠΌ понадобится ΠΎΠ΄ΠΈΠ½ Ρ†ΠΈΠΊΠ»:

МоТно Ρ‚Π°ΠΊΠΆΠ΅ внСшниС Ρ†ΠΈΠΊΠ»Ρ‹ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π² ΠΎΠ΄ΠΈΠ½ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ, Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅:

ΠœΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ

Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, Ссли Ρ€Π°Π·ΠΌΠ΅Ρ€ этого массива фиксирован ΠΈ объявлСн Π² описании Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ссли Π·Π°Ρ€Π°Π½Π΅Π΅ извСстСн Ρ€Π°Π·ΠΌΠ΅Ρ€ массива, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰ΡƒΡŽ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°:

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² этом случаС нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ массивы ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ массивы ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, Π½Π°ΠΌ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΏΡ€ΠΈΠΉΠ΄ΡƒΡ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Для Π½Π°Ρ‡Π°Π»Π° разбСрСмся, ΠΊΠ°ΠΊ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π² Π²ΠΈΠ΄Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π˜Ρ‚Π°ΠΊ, Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊ:

Π€ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰ΡƒΡŽ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ Ρ‚Π°ΠΊ:

ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ способС объявлСния массива ΠΈ выдСлСния памяти ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Ρ€Π°Π·Π½Ρ‹Ρ… строчках массива Π±Ρ‹Π»ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ΅ число элСмСнтов.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ чисСл ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅

Допустим, ΠΌΡ‹ Π·Π°ΠΏΠΎΠ»Π½ΠΈΠΌ массив Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ умноТСния: A[i][j]=i*j ΠΊΠ°ΠΊ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π² Π½Π°Ρ‡Π°Π»Π΅ Ρ€Π°Π·Π΄Π΅Π»Π°. Если ΠΌΡ‹ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ вывСсти этот массив Π½Π° экран, раздСляя элСмСнты Π² строкС ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ, Ρ‚ΠΎ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ числа ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ столбцы Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ окаТутся Π½Π΅Ρ€ΠΎΠ²Π½Ρ‹ΠΌΠΈ:

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€ΠΎΠ²Π½Ρ‹Π΅ столбцы Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ числа Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ΄Π½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ΅ число ΠΈΠΌΠ΅Π»ΠΎ ΡˆΠΈΡ€ΠΈΠ½Ρƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€ΠΎΠ²Π½ΠΎ Π² 3 символа, Π° β€œΠ»ΠΈΡˆΠ½ΠΈΠ΅β€ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π±Ρ‹Π»ΠΈ Π±Ρ‹ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ. Π’ΠΎΠ³Π΄Π° получится ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π°:

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π» послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ числа, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ этот ΠΏΡ€ΠΎΠ±Π΅Π» ΠΊ ΡˆΠΈΡ€ΠΈΠ½Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ поля. Ѐункция width дСйствуСт ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ Π² ΠΏΠΎΡ‚ΠΎΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, поэтому Π΅Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ числа Π½Π° экран.

УпраТнСния

ΠžΠ±Ρ‰ΠΈΠ΅ трСбования ΠΊ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

РСшСниС Π·Π°Π΄Π°Ρ‡ΠΈ осущСствляСтся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° массив (Ρ‚ΠΈΠΏΠ° int ** ), Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€ΠΈ нСобходимости.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ Π²ΠΈΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ A:

A: ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ

НайдитС индСксы ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния максимального элСмСнта. Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ Π΄Π²Π° числа: Π½ΠΎΠΌΠ΅Ρ€ строки ΠΈ Π½ΠΎΠΌΠ΅Ρ€ столбца, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… стоит наибольший элСмСнт Π² Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠΌ массивС. Если Ρ‚Π°ΠΊΠΈΡ… элСмСнтов нСсколько, Ρ‚ΠΎ выводится Ρ‚ΠΎΡ‚, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ мСньшС Π½ΠΎΠΌΠ΅Ρ€ строки, Π° Ссли Π½ΠΎΠΌΠ΅Ρ€Π° строк Ρ€Π°Π²Π½Ρ‹ Ρ‚ΠΎ Ρ‚ΠΎΡ‚, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ мСньшС Π½ΠΎΠΌΠ΅Ρ€ столбца.

B: Π‘Π½Π΅ΠΆΠΈΠ½ΠΊΠ°

C: Шахматная доска

D: Π”ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ Π³Π»Π°Π²Π½ΠΎΠΉ

E: ΠŸΠΎΠ±ΠΎΡ‡Π½Π°Ρ диагональ

Числа Π½Π° Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, ΠΈΠ΄ΡƒΡ‰Π΅ΠΉ ΠΈΠ· ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π² Π»Π΅Π²Ρ‹ΠΉ Π½ΠΈΠΆΠ½ΠΈΠΉ ΡƒΠ³ΠΎΠ» Ρ€Π°Π²Π½Ρ‹ 1.

Числа, стоящиС Π²Ρ‹ΡˆΠ΅ этой Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, Ρ€Π°Π²Π½Ρ‹ 0.

Числа, стоящиС Π½ΠΈΠΆΠ΅ этой Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, Ρ€Π°Π²Π½Ρ‹ 2.

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив Π²Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ Π½Π° экран. Числа Π² строкС раздСляйтС ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ.

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

F: ΠŸΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки

Π”Π°Π½ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠŸΠΎΠΌΠ΅Π½ΡΠΉΡ‚Π΅ Π² Π½Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΈ послСднюю строку. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив Π²Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ Π½Π° экран.

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ массив Π½Π° экран раздСляя числа Π² строкС ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ.

G: ΠŸΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ столбцы

H: Π‘ΠΈΠΌΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π΅Π½ Π»ΠΈ массив?

I: k-я диагональ

J: Π’Ρ€Π°Π½ΡΠΏΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ

K: Π’Ρ€Π°Π½ΡΠΏΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ

L: ΠŸΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π΄Π²Π΅ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ

Π”Π°Π½ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹ΠΉ массив. ΠŸΠΎΠΌΠ΅Π½ΡΠΉΡ‚Π΅ мСстами элСмСнты, стоящиС Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ ΠΈ ΠΏΠΎΠ±ΠΎΡ‡Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, ΠΏΡ€ΠΈ этом ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΡ‚Π°Ρ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ столбцС (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ столбцС Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами элСмСнт Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΈ Π½Π° ΠΏΠΎΠ±ΠΎΡ‡Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ).

M: ΠšΠΈΠ½ΠΎΡ‚Π΅Π°Ρ‚Ρ€

Π’ ΠΊΠΈΠ½ΠΎΡ‚Π΅Π°Ρ‚Ρ€Π΅ n рядов ΠΏΠΎ m мСст Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ. Π’ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠΌ массивС хранится информация ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π½Π½Ρ‹Ρ… Π±ΠΈΠ»Π΅Ρ‚Π°Ρ…, число 1 ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π±ΠΈΠ»Π΅Ρ‚ Π½Π° Π΄Π°Π½Π½ΠΎΠ΅ мСсто ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠ΄Π°Π½ΠΎ, число 0 ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ мСсто свободно. ΠŸΠΎΡΡ‚ΡƒΠΏΠΈΠ» запрос Π½Π° ΠΏΡ€ΠΎΠ΄Π°ΠΆΡƒ k Π±ΠΈΠ»Π΅Ρ‚ΠΎΠ² Π½Π° сосСдниС мСста Π² ΠΎΠ΄Π½ΠΎΠΌ ряду. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ запрос.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ числа n ΠΈ m. Π”Π°Π»Π΅Π΅ ΠΈΠ΄Π΅Ρ‚ n строк, содСрТащих m чисСл (0 ΠΈΠ»ΠΈ 1), Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ. Π—Π°Ρ‚Π΅ΠΌ Π΄Π°Π½ΠΎ число k.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° вывСсти Π½ΠΎΠΌΠ΅Ρ€ ряда, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π΅ΡΡ‚ΡŒ k подряд ΠΈΠ΄ΡƒΡ‰ΠΈΡ… свободных мСст. Если Ρ‚Π°ΠΊΠΈΡ… рядов нСсколько, Ρ‚ΠΎ Π²Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€ наимСньшСго подходящСго ряда. Если подходящСго ряда Π½Π΅Ρ‚, Π²Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ число 0.

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

N: ΠŸΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Паскаля

Π”Π°Π½Ρ‹ Π΄Π²Π° числа n ΠΈ m. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ массив nΓ—m ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ:

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

O: Π₯ΠΎΠ΄Ρ‹ коня

На ΡˆΠ°Ρ…ΠΌΠ°Ρ‚Π½ΠΎΠΉ доскС стоит конь. ΠžΡ‚ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ коня Π½Π° доскС ΠΈ всС ΠΊΠ»Π΅Ρ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡŒΠ΅Ρ‚ конь.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ коня Π½Π° ΡˆΠ°Ρ…ΠΌΠ°Ρ‚Π½ΠΎΠΉ доскС Π² ΡˆΠ°Ρ…ΠΌΠ°Ρ‚Π½ΠΎΠΉ Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ β€œe4”, Π³Π΄Π΅ сначала записываСтся Π½ΠΎΠΌΠ΅Ρ€ столбца (Π±ΡƒΠΊΠ²Π° ΠΎΡ‚ β€œa” Π΄ΠΎ β€œh”, слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ), Π·Π°Ρ‚Π΅ΠΌ Π½ΠΎΠΌΠ΅Ρ€Ρƒ строки (Ρ†ΠΈΡ„Ρ€Π° ΠΎΡ‚ 1 Π΄ΠΎ 8, снизу Π²Π²Π΅Ρ€Ρ…).

ΠšΠ»Π΅Ρ‚ΠΊΡƒ, Π³Π΄Π΅ стоит конь, ΠΎΡ‚ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅ Π±ΡƒΠΊΠ²ΠΎΠΉ β€œK”, ΠΊΠ»Π΅Ρ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡŒΠ΅Ρ‚ конь, ΠΎΡ‚ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅ символами β€œ*”, ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ»Π΅Ρ‚ΠΊΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ.

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ Π½Π° экран ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ доски.

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

P: Π₯ΠΎΠ΄Ρ‹ фСрзя

Π Π΅ΡˆΠΈΡ‚Π΅ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ для фСрзя. Π€Π΅Ρ€Π·ΡŒ обозначаСтся Π±ΡƒΠΊΠ²ΠΎΠΉ β€œQ”.

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

Q: Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·ΠΌΠ΅ΠΉΠΊΠΎΠΉ

По Π΄Π°Π½Π½Ρ‹ΠΌ числам n ΠΈ m Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ nΓ—m числами ΠΎΡ‚ 1 Π΄ΠΎ nΓ—m β€œΠ·ΠΌΠ΅ΠΉΠΊΠΎΠΉβ€, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив, отводя Π½Π° Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Ρ€ΠΎΠ²Π½ΠΎ 4 символа.

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

R: Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ диагоналями

По Π΄Π°Π½Π½Ρ‹ΠΌ числам n ΠΈ m Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ nΓ—m числами ΠΎΡ‚ 1 Π΄ΠΎ nΓ—m β€œΠ΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠΌΠΈβ€, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив, отводя Π½Π° Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Ρ€ΠΎΠ²Π½ΠΎ 4 символа.

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

S: ΠŸΠΎΠ²ΠΎΡ€ΠΎΡ‚ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ массива

Π”Π°Π½ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ массив Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ nΓ—m. ΠŸΠΎΠ²Π΅Ρ€Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π½Π° 90 градусов ΠΏΠΎ часовой стрСлкС, записав Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Π½ΠΎΠ²Ρ‹ΠΉ массив Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ mΓ—n.

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉΡΡ массив. Числа ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ раздСляйтС ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ.

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

T: ΠŸΠΎΠ²ΠΎΡ€ΠΎΡ‚ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ массива

Π”Π°Π½ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹ΠΉ массив. ΠŸΠΎΠ²Π΅Ρ€Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π½Π° 90 градусов ΠΏΠΎ часовой стрСлкС. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π·Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π² этот ΠΆΠ΅ массив, Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ массив ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нСльзя.

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π° экран, раздСляя числа ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ.

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

U: Π’Π°Π±Π»ΠΈΡ†Π° умноТСния

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉΡΡ массив Π½Π° экран (ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ†ΠΈΠΊΠ»Ρ‹), отводя Π½Π° Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ числа Ρ€ΠΎΠ²Π½ΠΎ 4 символа.

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

V: Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² ΡˆΠ°Ρ…ΠΌΠ°Ρ‚Π½ΠΎΠΌ порядкС

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив Π½Π° экран, отводя Π½Π° Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Ρ€ΠΎΠ²Π½ΠΎ 4 символа.

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

W: Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΏΠΈΡ€Π°Π»ΡŒΡŽ

По Π΄Π°Π½Π½Ρ‹ΠΌ числам n ΠΈ m Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ nΓ—m числами ΠΎΡ‚ 1 Π΄ΠΎ nΓ—m ΠΏΠΎ спирали, выходящСй ΠΈΠ· Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ ΡƒΠ³Π»Π° ΠΈ Π·Π°ΠΊΡ€ΡƒΡ‡Π΅Π½Π½ΠΎΠΉ ΠΏΠΎ часовой стрСлкС, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив, отводя Π½Π° Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Ρ€ΠΎΠ²Π½ΠΎ 4 символа.

ВСсты ΠΊ этой Π·Π°Π΄Π°Ρ‡Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅.

X: Π‘Π°ΠΏΠ΅Ρ€

На ΠΏΠΎΠ»Π΅ для ΠΈΠ³Ρ€Ρ‹ Π² сапСр ΠΊΠ»Π΅Ρ‚ΠΎΡ‡ΠΊΠΈ с ΠΌΠΈΠ½Π°ΠΌΠΈ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ΡΡ символом β€œ*”, Π° Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ пустой ΠΊΠ»Π΅Ρ‚ΠΎΡ‡ΠΊΠ΅ записано число ΠΎΡ‚ 0 Π΄ΠΎ 8, Ρ€Π°Π²Π½ΠΎΠ΅ количСству ΠΌΠΈΠ½ Π² 8 ΠΊΠ»Π΅Ρ‚ΠΊΠ°Ρ…, сосСдних с Π΄Π°Π½Π½ΠΎΠΉ.

Π”Π°Π½ список ΠΌΠΈΠ½ Π½Π° ΠΏΠΎΠ»Π΅. ΠŸΠΎΡΡ‚Ρ€ΠΎΠΉΡ‚Π΅ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΌΡƒ списку ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ поля.

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ поля Π½Π° экран, ΠΊΠ»Π΅Ρ‚ΠΊΠΈ ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ раздСляйтС ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ.

ВСсты ΠΊ этой Π·Π°Π΄Π°Ρ‡Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅.

Y: ΠšΡ€Π΅ΡΡ‚ΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая ΠΏΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ поля для ΠΈΠ³Ρ€Ρ‹ Π² Β«ΠšΡ€Π΅ΡΡ‚ΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈΒ» ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚, ΠΌΠΎΠ³Π»Π° Π»ΠΈ такая ситуация Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΈΠ³Ρ€Ρ‹ с соблюдСниСм всСх ΠΏΡ€Π°Π²ΠΈΠ».

Напомним, Ρ‡Ρ‚ΠΎ ΠΈΠ³Ρ€Π° Π² Β«ΠšΡ€Π΅ΡΡ‚ΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈΒ» вСдСтся Π½Π° ΠΏΠΎΠ»Π΅ 3ο‚΄3. Π”Π²Π° ΠΈΠ³Ρ€ΠΎΠΊΠ° ходят ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ставит крСстик, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ – Π½ΠΎΠ»ΠΈΠΊ. Π‘Ρ‚Π°Π²ΠΈΡ‚ΡŒ крСстик ΠΈ Π½ΠΎΠ»ΠΈΠΊ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π² Π»ΡŽΠ±ΡƒΡŽ Π΅Ρ‰Π΅ Π½Π΅ Π·Π°Π½ΡΡ‚ΡƒΡŽ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ поля. Когда ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ² поставит Ρ‚Ρ€ΠΈ своих Π·Π½Π°ΠΊΠ° Π² ΠΎΠ΄Π½ΠΎΠΉ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ, Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ ΠΈΠ»ΠΈ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° всС ΠΊΠ»Π΅Ρ‚ΠΊΠΈ поля окаТутся заняты, ΠΈΠ³Ρ€Π° заканчиваСтся.

Вводится Ρ‚Ρ€ΠΈ строки ΠΏΠΎ Ρ‚Ρ€ΠΈ числа Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΡ… ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅. Число 0 ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΏΡƒΡΡ‚ΡƒΡŽ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ, 1 – крСстик, 2 – Π½ΠΎΠ»ΠΈΠΊ. Числа Π² строкС Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ.

ВрСбуСтся вывСсти слово YES, Ссли указанная ситуация ΠΌΠΎΠ³Π»Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² Ρ…ΠΎΠ΄Π΅ ΠΈΠ³Ρ€Ρ‹, ΠΈ NO Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.

ВСсты ΠΊ этой Π·Π°Π΄Π°Ρ‡Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅.

Z: Городской ΠΏΠ»Π°Π½

План Π³ΠΎΡ€ΠΎΠ΄Π° прСдставляСт собой ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ, Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹ΠΉ Π½Π° \(n\times m\) ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊΠΎΠ². ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ занят Π·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π±Ρ‹Ρ‚ΡŒ свободным. Если Π΄Π²Π° сосСдних (ΠΏΠΎ сторонС) ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊΠ° заняты Π·Π΄Π°Π½ΠΈΠ΅ΠΌ, Ρ‚ΠΎ это β€” ΠΎΠ½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ Π·Π΄Π°Π½ΠΈΠ΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

1. Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы

И Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ интСрСсный Ρ„Π°ΠΊΡ‚ ΠΎ массивах. ΠœΠ°ΡΡΠΈΠ²Ρ‹ Π±Ρ‹Π²Π°ΡŽΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΌΠΈ, Π½ΠΎ ΠΈ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ.

И Ρ‡Ρ‚ΠΎ это Π·Π½Π°Ρ‡ΠΈΡ‚, спроситС Π²Ρ‹?

А это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ячСйки массива ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π²ΠΈΠ΄Π΅ столбца (ΠΈΠ»ΠΈ строки), Π½ΠΎ ΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

Π“Π΄Π΅ имя β€” это имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ-массива, ΡˆΠΈΡ€ΠΈΠ½Π° β€” это ΡˆΠΈΡ€ΠΈΠ½Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Π² ячСйках), Π° высота β€” это высота Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив: Π΄Π²Π° столбца ΠΈ 5 строк.
Π’ ячСйку (1,1) записываСм 5.

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ это Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π² памяти:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

ΠšΡΡ‚Π°Ρ‚ΠΈ, для Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Ρ‹ΡΡ‚Ρ€ΡƒΡŽ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ:

Π•ΡΡ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ мСст, Π³Π΄Π΅ Π²Π°ΠΌ ΠΊΠ°ΠΊ программисту ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. РСализация практичСски любой Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½ΠΎΠΉ ΠΈΠ³Ρ€Ρ‹ β€” это ΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив: Β«Π¨Π°Ρ…ΠΌΠ°Ρ‚Ρ‹Β», «Шашки», Β«ΠšΡ€Π΅ΡΡ‚ΠΈΠΊΠΈ-Нолики», Β«ΠœΠΎΡ€ΡΠΊΠΎΠΉ Π±ΠΎΠΉΒ»:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

2. РасполоТСниС элСмСнтов Π² массивах: (x,y) ΠΈΠ»ΠΈ (y,x)

Π’ΡƒΡ‚, кстати, Π΅ΡΡ‚ΡŒ интСрСсная Π΄ΠΈΠ»Π΅ΠΌΠΌΠ°:

Когда ΠΌΡ‹ создаСм массив new int[2][5] ; Ρƒ нас Ρ‚Π°Π±Π»ΠΈΡ†Π° Β«Π΄Π²Π΅ строки ΠΈ 5 столбцов Β» ΠΈΠ»ΠΈ всС-Ρ‚Π°ΠΊΠΈ Β«Π΄Π²Π° столбца ΠΈ 5 строк Β»? Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΌΡ‹ сначала Π·Π°Π΄Π°Π΅ΠΌ Β«ΡˆΠΈΡ€ΠΈΠ½ΡƒΒ», Π° ΠΏΠΎΡ‚ΠΎΠΌ «высоту» ΠΈΠ»ΠΈ всС-Ρ‚Π°ΠΊΠΈ сначала «высоту», Π° ΠΏΠΎΡ‚ΠΎΠΌ β€” Β«ΡˆΠΈΡ€ΠΈΠ½ΡƒΒ»? И, ΠΊΠ°ΠΊ говорится, Ρ‚ΡƒΡ‚ Π½Π΅ всС Ρ‚Π°ΠΊ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ.

НачнСм с вопроса: Π° ΠΊΠ°ΠΊ эта Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ хранится Π² памяти?

АргумСнт Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Π³ΠΈΠΏΠΎΡ‚Π΅Π·Ρ‹ Β«ΡˆΠΈΡ€ΠΈΠ½Π°Β»-«высота».

Π•Ρ‰Π΅ Π² школС всСх ΡƒΡ‡ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΈΠ· ΠΏΠ°Ρ€Ρ‹ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ сначала указываСтся Β«xΒ», Π° Π·Π°Ρ‚Π΅ΠΌ Β«yΒ». И это Π½Π΅ просто ΡˆΠΊΠΎΠ»ΡŒΠ½Ρ‹ΠΉ стандарт β€” это Π²ΠΎΠΎΠ±Ρ‰Π΅ стандарт Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅. ΠŸΡ€ΠΎΡ‚ΠΈΠ² Ρ†Π°Ρ€ΠΈΡ†Ρ‹ Π½Π°ΡƒΠΊ, ΠΊΠ°ΠΊ говорится, Π½Π΅ ΠΏΠΎΠΏΡ€Π΅ΡˆΡŒ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ? Π‘Π½Π°Ρ‡Π°Π»Π° Β«ΡˆΠΈΡ€ΠΈΠ½Π°Β», Π° Π·Π°Ρ‚Π΅ΠΌ «высота»?

АргумСнт Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Π³ΠΈΠΏΠΎΡ‚Π΅Π·Ρ‹ «высота»- Β«ΡˆΠΈΡ€ΠΈΠ½Π°Β».

Π’ΡƒΡ‚ Ρ‚ΠΎΠΆΠ΅ Π΅ΡΡ‚ΡŒ интСрСсный Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΈ ΠΈΠ΄Π΅Ρ‚ ΠΎΠ½ ΠΈΠ·. быстрой ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов. Π’Π΅Π΄ΡŒ Ссли ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ наш массив, напишСм этот ΠΊΠΎΠ΄ ΠΊΠ°ΠΊ:

НичСго Π½Π΅ Π·Π°ΠΌΠ΅Ρ‡Π°Π΅Ρ‚Π΅? А Ссли Ρ‚Π°ΠΊ:

Если ΠΌΡ‹ напишСм наши Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΊΠΎΠ΄Π΅ построчно, Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ 2 строки ΠΈ 5 столбцов.

Π˜Ρ‚ΠΎΠ³ΠΈ

Π§Ρ‚ΠΎ Ρ‚ΡƒΡ‚ скаТСшь? Π’Π°ΠΌ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Π²Π°ΠΌ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅. Π“Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС программисты, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΈΡΡŒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°.

Если Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, Π³Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов Π² ΠΊΠΎΠ΄Π΅, Ρ‚ΠΎ скорСС всСго Ρ‚Π°ΠΌ всС Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚Ρ‚Π°Π»ΠΊΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ быстрой ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ стандарт «высота»-Β«ΡˆΠΈΡ€ΠΈΠ½Π°Β».

Если ΠΆΠ΅ Π²Π°ΠΌ ΠΏΠΎΠ²Π΅Π·Π΅Ρ‚ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π³Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΈ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π°Π±ΠΎΡ‚Π° с ΠΈΠ³Ρ€ΠΎΠ²Ρ‹ΠΌΠΈ Π΄Π²ΠΈΠΆΠΊΠ°ΠΌΠΈ), Ρ‚Π°ΠΌ скорСС всСго Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° Β«ΡˆΠΈΡ€ΠΈΠ½Π°Β»-«высота»

3. Устройство Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов

А сСйчас Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Π½Π° самом Π΄Π΅Π»Π΅ устроСны Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы. Π“ΠΎΡ‚ΠΎΠ²Ρ‹?

Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы β€” это Π½Π° самом Π΄Π΅Π»Π΅ массивы массивов!

Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ссли Π² случаС с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ массивом «пСрСмСнная-массив Ρ…Ρ€Π°Π½ΠΈΡ‚ ссылку Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ элСмСнты массива». Π’ΠΎ Π² случаС с Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ массивами Ρƒ нас ситуация Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ взрывоопаснСС: пСрСмСнная-Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ-массив Ρ…Ρ€Π°Π½ΠΈΡ‚ ссылку Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ ссылки Π½Π° ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы. Π­Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Π΅ΠΌ сто Ρ€Π°Π· ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

Π‘Π»Π΅Π²Π° Ρƒ нас «пСрСмСнная-Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ-массив», которая Ρ…Ρ€Π°Π½ΠΈΡ‚ ссылку Π½Π° Β«ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив». Π’ сСрСдинС Ρƒ нас Β«ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив», Π² ячСйках ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ хранятся ссылки Π½Π° ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы β€” строки Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива. Ну ΠΈ справа Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массива β€” строки нашСго Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива.

Π­Ρ‚ΠΎ Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π½Π° самом Π΄Π΅Π»Π΅ устроСны Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы. И Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π΄Π°Π΅Ρ‚ Java-программисту нСсколько прСимущСств:

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Ρ‚.ΠΊ. Β«ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ²Β» Ρ…Ρ€Π°Π½ΠΈΡ‚ ссылки Π½Π° «массивы-строки», ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‡Π΅Π½ΡŒ быстро ΠΈ просто ΠΌΠ΅Π½ΡΡ‚ΡŒ строки мСстами. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Β«ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ²Β», Π½ΡƒΠΆΠ½ΠΎ просто ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ индСкс вмСсто Π΄Π²ΡƒΡ…. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’ΠΎΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки мСстами:

Π’ matrix[0] Ρƒ нас хранится ссылка Π½Π° ΠΏΠ΅Ρ€Π²ΡƒΡŽ строку.
МСняСм ссылки мСстами.

Π’ ΠΈΡ‚ΠΎΠ³Π΅ массив matrix выглядит Ρ‚Π°ΠΊ:

Если Π²Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ ячСйкС Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива, Π½ΠΎ послС ΠΈΠΌΠ΅Π½ΠΈ массива ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ индСкс, Π²Ρ‹ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρƒ-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ², Π² ячСйках ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ хранятся ссылки Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° говорят слово массив, всС ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅, Π½ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅ говоря ΠΎ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠΌ массивС.

ΠœΠ°ΡΡΠΈΠ²Ρ‹ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языках программирования Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΡ… основная Ρ†Π΅Π»ΡŒ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈ Ρ‚ΠΎΠΌ ΠΆΠ΅. Π’ языкС Π‘ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠ½ называСтся ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ массив, Π° Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅ ΠΊΠ°ΠΊ список.

Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ индСксированиС всСгда ΠΈΠ΄Π΅Ρ‚ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ с нуля.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы?

Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив отличаСтся ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠΌ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт прСдставляСт собой ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° Π² Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠΌ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ элСмСнтС хранится свой массив. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ списка массивов.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ массивы ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ, Ρ‚Π°ΠΊ ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ собой Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ. Π˜Π½Ρ‹ΠΌΠΈ словами массив с фиксированной Π΄Π»ΠΈΠ½ΠΎΠΉ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½, Π° с динамичСским Ρ‚Π°ΠΊΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ Π»Π΅Π³ΠΊΠΎ.

ΠšΡ€ΠΎΠΌΠ΅ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… ΠΈ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ…, Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ ΠΈΠ»ΠΈ n-ΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт являСтся i-Ρ‚Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ списка, Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ слоТно для понимания.

Π’ языках программирования всС элСмСнты массива Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, это ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ строки ΠΈΠ»ΠΈ числа.

КакиС Π·Π°Π΄Π°Ρ‡ΠΈ Π±Ρ‹Π²Π°ΡŽΡ‚?

На Ρ‚Π΅ΠΌΡƒ с Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ массивами ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½ΠΎ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство всСвозмоТных Π·Π°Π΄Π°Ρ‡. ΠœΡ‹ ΠΆΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎ самых популярных ΠΈΠ· Π½ΠΈΡ…. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ для Ρ‚Π°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ встроСнныС Π² язык Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΡ… ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

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

Однако ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ массивами Π½ΡƒΠΆΠ½ΠΎ всСгда ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ индСксы Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π΅ допустимых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Π”Ρ€ΡƒΠ³ΠΈΠΌ интСрСсным ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Π·Π°Π΄Π°Ρ‡ ΡΠ²Π»ΡΡŽΡ‚ΡΡ сортировки массива. НапримСр, Π·Π°Π΄Π°Π½ΠΎ Π½Π΅ΠΊΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ отсортированы элСмСнты. НуТно просто ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² любом случаС это ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ прСкрасно Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΎΡΡŒ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

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

К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΈΠ³Ρ€Ρ‹. Π­Ρ‚ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ Ρ‚Π°ΠΊ слоТно с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов, Π½ΠΎ Ссли Π²Ρ‹ Π΅Ρ‰Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Ρ‚ΡƒΠ΄Π° Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΊΡ€ΡƒΡ‚ΠΎ. Π’Ρ‹ΠΉΠ΄Π΅Ρ‚ Π΄Π°ΠΆΠ΅ Π½Π΅Ρ‡Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ нСбольшого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ сдСлали ΠΈΠ· простой Π·Π°Π΄Π°Ρ‡ΠΊΠΈ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ!

ОписаниС ΠΈ созданиС Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива Π² Pascal

НС стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ использованиСм массива Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

ΠŸΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ΡΡ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ массив с ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π΅ΠΌ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΠΈΠ½Π°Ρ‡Π΅ машина Π½Π΅ смоТСт ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²ΠΎΠΎΠ±Ρ‰Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

По-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ Ρ‚Π°ΠΊΠΎΠ΅ объявлСния Π½Π° языкС программистов ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ «инициализация». НасчСт Π½Π°Π·Π²Π°Π½ΠΈΠΉ этой нСслоТной Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ Π΄ΠΎΠ»Π³ΠΎ.

Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ всС элСмСнты массива, Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΏΠΎ всСм Π΅Π³ΠΎ элСмСнтам цикличСски ΠΈ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΈΠ· консоли Π²Π²ΠΎΠ΄. Для Π²Ρ‹Π²ΠΎΠ΄Π° происходит аналогичная опСрация.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

Волько Π² послСднСм случаС вмСсто считывания Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ вывСсти Π΄Π°Π½Π½Ρ‹ΠΉ элСмСнт Π½Π° экран.

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ поняв ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ объявлСния ΠΈ заполнСния массива, останСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы

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

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы Π½Π° языкС программирования Pascal ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊ:

Однако ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡ… ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ:

ΠŸΡ€ΠΈ этом описаниС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ type ΠΈ Ρ‚ΠΎΠ³Π΄Π° создаСтся Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ объявлСнии ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Или массив ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ описан нСпосрСдствСнно Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. m ΠΈ n – это константы, ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΈ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ значСния, Π½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Ρ‚Π°ΠΊ Π½Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π΅ ΠΎΡ‚ 1 Π΄ΠΎ m опрСдСляСтся количСство строк, Π° Π² ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π΅ ΠΎΡ‚ 1 Π΄ΠΎ n – количСство столбцов массива.

1 Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ – описаниС массива Ρ‡Π΅Ρ€Π΅Π· Ρ€Π°Π·Π΄Π΅Π» type:

2 Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ – описаниС массива Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…:

ΠŸΡ€ΠΈ использовании Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° описания Π»ΡƒΡ‡ΡˆΠ΅ сначала ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива (строка Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ описании Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива:

Для обращСния ΠΊ элСмСнту Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ имя массива ΠΈ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ – значСния Π΄Π²ΡƒΡ… индСксов (ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ строки, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ – Π½ΠΎΠΌΠ΅Ρ€ столбца), Π½Π° пСрСсСчСниС ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… стоит элСмСнт (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, a[i,2]:=6). Π’ языкС программирования Pascal допустимо Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ индСксов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобок (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, a[i][5]:= 7).

Если описываСтся Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив ΠΊΠ°ΠΊ типизированная константа, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π·Π°Π΄Π°Π½ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΅Π³ΠΎ элСмСнтов ΠΎΠ½ рассматриваСтся ΠΊΠ°ΠΊ массив массивов. ΠŸΡ€ΠΈ этом Π² ΠΎΠ±Ρ‰ΠΈΡ… ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки значСния элСмСнтов строк (каТдая строка Π² своих скобках):

Рассмотрим простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌ массивом. Π‘Π½Π°Ρ‡Π°Π»Π° Π·Π°ΠΏΠΎΠ»Π½ΠΈΠΌ Π΅Π³ΠΎ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ ΠΈΡ… Π½Π° экран Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

Π Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ массива (Ρ‚.Π΅. количСство содСрТащихся Π² Π½Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ) опрСдСляСтся ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ количСства строк Π½Π° количСство столбцов. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ Π² массив помСщаСтся 15 Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Когда ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠ΅ число, Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° read считываСт Π΅Π³ΠΎ ΠΈ ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π² ячСйку с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌΠΈ индСксами i ΠΈ j. Когда i Ρ€Π°Π²Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ j мСняСтся ΠΏΡΡ‚ΡŒ Ρ€Π°Π·, ΠΈ, Π·Π½Π°Ρ‡ΠΈΡ‚, заполняСтся пСрвая строка Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Когда i Ρ€Π°Π²Π½Π° Π΄Π²ΡƒΠΌ, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ j снова мСняСтся ΠΏΡΡ‚ΡŒ Ρ€Π°Π· ΠΈ заполняСтся вторая строка Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Аналогично заполняСтся Ρ‚Ρ€Π΅Ρ‚ΡŒΡ строка Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Ρ†ΠΈΠΊΠ» for Π² ΠΎΠ±Ρ‰Π΅ΠΉ слоТности ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ 15 ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ, внСшний Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 3.

Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ значСния – Π½Π΅ Π²Π°ΠΆΠ½ΠΎ. Он ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ, Π»ΠΈΠ±ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку.

Π’Ρ‹Π²ΠΎΠ΄ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Выводятся 3 строки ΠΏΠΎ 5 чисСл Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ. Π’Π½ΡƒΡ‚Ρ€ΠΈ строк числа Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ.

На самом Π΄Π΅Π»Π΅, это Π½Π΅ совсСм ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ написанная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°. ΠœΡ‹ нСсколько Ρ€Π°Π· ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ†ΠΈΡ„Ρ€Ρ‹ 3 ΠΈ 5. А Ρ‡Ρ‚ΠΎ Ссли ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ массива? ΠŸΡ€ΠΈΠ΄Π΅Ρ‚ΡΡ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всю ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ (ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΎΡ‡Π΅Π½ΡŒ большая) ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ значСния. Π­Ρ‚ΠΎ нСэффСктивно. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ константы. Π’ случаС Ρ‡Π΅Π³ΠΎ ΠΈΡ… значСния ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ всСго лишь Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС.
Вторая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° – это Β«ΠΊΡ€ΠΈΠ²ΠΎΡΡ‚ΡŒΒ» Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠΉ Π½Π° экран Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, Π² случаС Ссли Π΅ΡΡ‚ΡŒ значСния Ρ€Π°Π·Π½ΠΎΠΉ разрядности (ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎΠ΅, Π΄Π²ΡƒΠ·Π½Π°Ρ‡Π½ΠΎΠ΅ ΠΈ Ρ‚.Π΄. числа). НСплохо Π±Ρ‹ ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ число ΠΎΡ‚Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π°Π²Π½ΠΎΠ΅ количСство Π·Π½Π°ΠΊΠΎΠ².
Π’ΠΎΡ‚ Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *