Говоря ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивах ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ

Π£Ρ€ΠΎΠΊ 14. ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы. Π Π°Π±ΠΎΡ‚Π° с элСмСнтами

Говоря ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивах ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ

ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅.

ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив β€” это фиксированноС количСство элСмСнтов ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ°, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ свой Π½ΠΎΠΌΠ΅Ρ€. ΠžΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ элСмСнтам массива осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ указания ΠΈΠΌΠ΅Π½ΠΈ массива ΠΈ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² элСмСнтов.

ΠœΠ΅ΠΆΠ΄Ρƒ ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ‚ΠΈΠΏΠ° ΠΈ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ставится Π·Π½Π°ΠΊ Β«Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅Β». Array β€” слуТСбноС слово (Π² ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ с английского ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ «массив», Β«Π½Π°Π±ΠΎΡ€Β»); [1..N] β€” Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках указываСтся Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта, Π·Π°Ρ‚Π΅ΠΌ, послС Π΄Π²ΡƒΡ… Ρ‚ΠΎΡ‡Π΅ΠΊ, Π½ΠΎΠΌΠ΅Ρ€ послСднСго элСмСнта массива; of β€” слуТСбноС слово (Π² ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ с английского Β«ΠΈΠ·Β»); integer β€” Ρ‚ΠΈΠΏ элСмСнтов массива.

ИндСксом ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½Ρ‹Π΅ числа: ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊ: [0..10], [-29..45], [β€˜a’..’z’], [false..true] β€” Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π°ΠΌ подходят Π»ΡŽΠ±Ρ‹Π΅ символы ΠΈ числа β€” Π³Π»Π°Π²Π½ΠΎΠ΅ ΡΠΎΠ±Π»ΡŽΡΡ‚ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ условиС: лСвая Ρ‡Π°ΡΡ‚ΡŒ мСньшС ΠΏΡ€Π°Π²ΠΎΠΉ. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ мСньшС β€” Π²ΠΎΡΠΊΠ»ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π·Π½Π°ΠΊ(β€˜!’) ΠΈΠ»ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ°(β€˜.’) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ASCII ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ord() ΠΈ Chr().

Как ΠΆΠ΅ производится Π²Π²ΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива?

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ввСсти ΠΈΠ»ΠΈ вывСсти значСния элСмСнтов Ρ‚Π°ΠΊΠΎΠ³ΠΎ массива, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ†ΠΈΠΊΠ» с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ(ΠΈΠ»ΠΈ с постусловиСм, ΠΈΠ»ΠΈ с прСдусловиСм β€” Π² ΠΎΠ±Ρ‰Π΅ΠΌ, любой Ρ†ΠΈΠΊΠ». ).

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

Π Π°Π· ΡƒΠΆ ΠΌΡ‹ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΠ»ΠΈ Ρ‚Π΅ΠΌΡƒ Π·Π°Π΄Π°Ρ‡ ΠΈΠ· Π±Π»ΠΎΠΊΠ° Series, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π΅ΡˆΠΈΠΌ ΠΏΠ°Ρ€Ρƒ Π·Π°Π΄Π°Ρ‡Π΅ΠΊ ΠΎΡ‚Ρ‚ΡƒΠ΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ массивов, Π° Π½Π΅ Ρ‚Π΅ΠΌ ΡƒΠ²Π΅Ρ‡Π½Ρ‹ΠΌ способом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½Π°ΠΌ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ.

ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы. РСшСниС Π·Π°Π΄Π°Ρ‡.

Series8. Π”Π°Π½ΠΎ Ρ†Π΅Π»ΠΎΠ΅ число N ΠΈ Π½Π°Π±ΠΎΡ€ ΠΈΠ· N Ρ†Π΅Π»Ρ‹Ρ… чисСл. ВывСсти Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ порядкС всС Ρ‡Π΅Ρ‚Π½Ρ‹Π΅ числа ΠΈΠ· Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° ΠΈ количСство K Ρ‚Π°ΠΊΠΈΡ… чисСл.

Series28. Π”Π°Π½ΠΎ Ρ†Π΅Π»ΠΎΠ΅ число N ΠΈ Π½Π°Π±ΠΎΡ€ ΠΈΠ· N вСщСствСнных чисСл: A1, A2, …, AN. ВывСсти ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ числа:

Π˜ΡΡ…ΠΎΠ΄Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅: Series28.

Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΎ Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ числа Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ for36.

Ну ΠΈ напослСдок Π΄Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ Π²Π΅ΡΠ΅Π»Π΅Π½ΡŒΠΊΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ Π½Π° Π΄Π»ΠΈΠ½Π½ΡƒΡŽ Π°Ρ€ΠΈΡ„ΠΌΠ΅Ρ‚ΠΈΠΊΡƒ.

Π—Π°Π΄Π°Ρ‡Π°. Найти Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π» числа.

ΠœΡ‹ ΡƒΠΆΠ΅ Ρ€Π΅ΡˆΠ°Π»ΠΈ эту Π·Π°Π΄Π°Ρ‡Ρƒ здСсь(for19).

Научимся Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π» Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ числа N. Π€Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π» числа β€” это ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ чисСл 1*2*3*…*(N-1 )*N (обозначаСтся ΠΊΠ°ΠΊ N!). Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ 8!=40320, Π° 13!=6227020800. Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… Integer, Longlnt ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ вСсьма Π² ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½Ρ‹Ρ… чисСл. Для прСдставлСния Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π»Π° договоримся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ массив. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

A[0]A[1]A[2]A[3]A[4]A[5]A[6]A[7]A[8]
800861993

Π’ массивС записано Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 11!=39916800. Каким ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ? Π’ А[0] фиксируСтся число занятых элСмСнтов массива, Π² А[1] β€” Ρ†ΠΈΡ„Ρ€Π° Π΅Π΄ΠΈΠ½ΠΈΡ† Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°, Π² А[2] β€” Ρ†ΠΈΡ„Ρ€Π° дСсятков Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°, Π² А[3] β€” Ρ†ΠΈΡ„Ρ€Π° сотСн Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΈ Ρ‚. Π΄. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊ, Π° Π½Π΅ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚? Вакая запись позволяСт ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ сдвиг элСмСнтов массива ΠΏΡ€ΠΈ пСрСносС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ разряд. А сСйчас Π½Π°Π±Π΅Ρ€ΠΈΡ‚Π΅, ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ, тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ ΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π΅ Π² пошаговом Ρ€Π΅ΠΆΠΈΠΌΠ΅, отслСТивая ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ большом Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ N. Π”ΠΎΠ±Π΅ΠΉΡ‚Π΅ΡΡŒ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ понимания Π»ΠΎΠ³ΠΈΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² пошаговом Ρ€Π΅ΠΆΠΈΠΌΠ΅, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ «шаг Π±Π΅Π· Π²Ρ…ΠΎΠ΄Π° Π² ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒΒ» ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Β«Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅Β».

Говоря ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивах ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ

ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив β€” это ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ упорядочСнноС мноТСство элСмСнтов. Π—Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ элСмСнтом ΠΈΠ΄Π΅Ρ‚ Π²Ρ‚ΠΎΡ€ΠΎΠΉ, Π·Π° Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ β€” Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΈ Ρ‚. Π΄. ИндСкс ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‡Π΅ΠΌ ΡƒΠ³ΠΎΠ΄Π½ΠΎ β€” ΠΈ Ρ†Π΅Π»Ρ‹ΠΌ числом, ΠΈ символом. Но Ρ‡Π°Ρ‰Π΅ ΠΌΡ‹ всё-Ρ‚Π°ΠΊΠΈ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ: [1.. N].

На сСгодня всС! Если Ρƒ вас Π΅Ρ‰Π΅ ΠΎΡΡ‚Π°Π»ΠΈΡΡŒ вопросы ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹ΡˆΠ΅, оставляйтС ΠΈΡ… Π² коммСнтариях. И ΠΎΡ‡Π΅Π½ΡŒ скоро ΠΌΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° массивы ΠΈΠ· Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ° М. Π­. Абрамяна.

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

Pascal | ЛСкция β„–5

ΠœΠ°ΡΡΠΈΠ²Ρ‹

Π‘ΠžΠ”Π•Π Π–ΠΠΠ˜Π•:

Π’ΠΈΠΏ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ – это мноТСство, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ³ΠΎΠ²ΠΎΡ€Π΅Π½ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ элСмСнтами – значСниями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ этого Ρ‚ΠΈΠΏΠ°. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ стандартных Ρ‚ΠΈΠΏΠ° Паскаля: Ρ‚ΠΈΠΏΡ‹ Real, Integer (это числовыС мноТСства), Ρ‚ΠΈΠΏ Char (мноТСство символов), Ρ‚ΠΈΠΏ Boolean. Однако Π² ПаскалС ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ срСдства, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ, исходя ΠΈΠ· ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ Ρ‚ΠΈΠΏΠΎΠ², Π½ΠΎΠ²Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹. Π Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ структурированныС Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…:

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрим массивы.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ массива

ΠœΠ°ΡΡΠΈΠ²Ρ‹, ΠΊΠ°ΠΊ ΠΈ Ρ†ΠΈΠΊΠ»Ρ‹, β€” Π²Π΅Π»ΠΈΡ‡Π°ΠΉΡˆΠ΅Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ чСловСчСства. ΠœΠ°ΡΡΠΈΠ²Ρ‹ приходят Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° приходится ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π΅Π»ΠΎ с Π½Π°Π±ΠΎΡ€Π°ΠΌΠΈ ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… ΠΈ ΠΎΠ΄Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ‚ΠΎΡ‡ΠΊΠΈ Π² Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠΌ, Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠΌ пространствС).

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

Массив ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ характСристики:

ΠœΠ°ΡΡΠΈΠ²Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ. Но ΠΌΡ‹ ограничимся рассмотрСниСм Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… ΠΈ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов.

ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы – массивы, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… элСмСнты ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Π½Ρ‹ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎ порядку: ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт, Π²Ρ‚ΠΎΡ€ΠΎΠΉ, Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΈ Ρ‚.Π΄. Для обозначСния элСмСнтов ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ΄ΠΈΠ½ индСкс.

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

По Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΎΠΉ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ числовыС массивы часто Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π²Π΅ΠΊΡ‚ΠΎΡ€Π°ΠΌΠΈ, Π° Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ – ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ.

ЗначСния индСксов ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ нСпосрСдствСнно числом (прямая адрСсация) – A(1), A(4,2) ΠΈΠ»ΠΈ косвСнно, ΡƒΠΊΠ°Π·Π°Π² Π² индСксС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, которая ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ индСкс (косвСнная адрСсация) – A(i), A(i, j+2).

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

ΠŸΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ элСмСнту массива, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° допустимыС Π³Ρ€Π°Π½ΠΈΡ†Ρ‹, появляСтся сообщСниС ΠΎΠ± ошибкС.

ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы: описаниС, Π²Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° массива

ΠžΠΏΠΈΡΠ°Ρ‚ΡŒ массив ΠΌΠΎΠΆΠ½ΠΎ двумя способами.

Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ описания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ массив ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π—Π΄Π΅ΡΡŒ A – Π½Π°Π·Π²Π°Π½ΠΈΠ΅ массива;

Array – слуТСбноС слово;

n1,n2 – соотвСтствСнно Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ послСднСго элСмСнта массива;

– любой ΠΈΠ· ΡƒΠΆΠ΅ ΠΈΠ·ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ².

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ элСмСнтов массива Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ (n2- n1+1).

ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· 20 вСщСствСнных чисСл, ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ 1, послСднСС – 20. Наш массив Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ имя Massiv.

ОписаниС массива Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² создании Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ программист ΠΌΠΎΠ³ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои Π½ΠΎΠ²Ρ‹ Ρ‚ΠΈΠΏΡ‹ Π² ПаскалС сущСствуСт Ρ€Π°Π·Π΄Π΅Π» описания Ρ‚ΠΈΠΏΠΎΠ² Type. Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π·Π΄Π΅Π» находится ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ описания констант ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ описания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ….

ПослС этого Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ описания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ массив, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ созданный Π½Π°ΠΌΠΈ Ρ‚ΠΈΠΏ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ сначала описали Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ Mas – массив ΠΈΠ· дСсяти Ρ†Π΅Π»Ρ‹Ρ… чисСл с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΎΡ‚ 10 Π΄ΠΎ 19, Π·Π°Ρ‚Π΅ΠΌ описали ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ B Ρ‚ΠΈΠΏΠ° Mas.

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ массивов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ†ΠΈΠΊΠ»Ρ‹. Π’ Ρ†ΠΈΠΊΠ»Π΅ имССтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ всС элСмСнты массива.

Для Π²Π²ΠΎΠ΄Π° массива с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован Ρ†ΠΈΠΊΠ» ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π²ΠΈΠ΄Π°: ΠΏΡƒΡΡ‚ΡŒ имССтся массив с ΠΈΠΌΠ΅Π½Π΅ΠΌ A, состоящий ΠΈΠ· n элСмСнтов, Ρ‚ΠΎΠ³Π΄Π°

Π’ этом случаС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π» n элСмСнтов массива. Для Π²Π²ΠΎΠ΄Π° элСмСнтов массива с Π½ΠΎΠ²ΠΎΠΉ строки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ReadLn. Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π² массив происходит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: сначала Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ счСтчика Ρ†ΠΈΠΊΠ»Π° Ρ€Π°Π²Π½ΠΎ 1; выполняСтся опСрация Read (A[1]); ΠΏΠΎΠ»Π΅ Ρ‡Π΅Π³ΠΎ счСтчик Ρ†ΠΈΠΊΠ»Π° становится Ρ€Π°Π²Π½Ρ‹ΠΌ 2; выполняСтся опСрация Read (A[2])… ΠΈ Ρ‚.Π΄. Π΄ΠΎ значСния i=n Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ.

Для Π²Ρ‹Π²ΠΎΠ΄Π° массива Π½Π° экран ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ†ΠΈΠΊΠ»:

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π½Π° экран Π² ΠΎΠ΄Π½Ρƒ строку Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½Ρ‹ всС n элСмСнтов массива, послС Ρ‡Π΅Π³ΠΎ курсор пСрСмСстится Π½Π° ΠΎΠ΄Π½Ρƒ строку Π²Π½ΠΈΠ·.

Как ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ сказано Π²Ρ‹ΡˆΠ΅, для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ массивов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ†ΠΈΠΊΠ»Ρ‹.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: ΠΏΡƒΡΡ‚ΡŒ имССтся массив M, состоящий ΠΈΠ· n элСмСнтов с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΎΡ‚ 1 Π΄ΠΎ n. Найти сумму элСмСнтов массива, вывСсти Π΅Π΅ Π½Π° экран.

Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы: описаниС, Π²Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° массива

Π’ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ ΠΎΡ‡Π΅Π½ΡŒ распространСно Ρ‚Π°ΠΊΠΎΠ΅ понятиС ΠΊΠ°ΠΊ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°. ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° – это Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΈΠ· коэффициСнтов A=(aij). Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ столбцы ΠΈ строки. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ индСкс ( i ) ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ строки, Π²Ρ‚ΠΎΡ€ΠΎΠΉ ( j ) – Π½ΠΎΠΌΠ΅Ρ€ столбца, Π½Π° пСрСсСчСнии ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… находится элСмСнт aij.

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ дСйствия Π½Π°Π΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ:

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов.

ОписаниС Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов отличаСтся ΠΎΡ‚ описания ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΎΠ±ΠΎΠΈΡ… индСксов:

Π—Π΄Π΅ΡΡŒ n1,n2 – Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ значСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ индСкса;

m1,m2 – Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ значСния Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ индСкса.

Π­Ρ‚ΠΎ массив, состоящий ΠΈΠ· 10*20*30=6000 Ρ†Π΅Π»Ρ‹Ρ… чисСл ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉ Π² памяти 6000*2=12000 Π±Π°ΠΉΡ‚. Π’ ПаскалС Π½Π΅Ρ‚ ограничСния свСрху Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ массива. Однако Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Паскаля ограничиваСтся объСм памяти, выдСляСмый ΠΏΠΎΠ΄ массивы. Π’ Π’ΡƒΡ€Π±ΠΎ ПаскалС это ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ составляСт 64 ΠšΠ±Π°ΠΉΡ‚Π°.

Π’ ПаскалС Π½Π΅ допускаСтся ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ динамичСских массивов, Ρ‚.Π΅. Ρ‚Π°ΠΊΠΈΡ…, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… опрСдСляСтся Π² процСссС выполнСния. ИзмСнСниС Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² массива происходит Ρ‡Π΅Ρ€Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² тСкстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΡƒΡŽ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ. Для упрощСния Ρ‚Π°ΠΊΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ индСксныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ констант:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ для измСнСния Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² массива Mas ΠΈ всСх ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, связанных с этими Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌΠΈ, достаточно ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ строку Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ – Ρ€Π°Π·Π΄Π΅Π» констант.

Для Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄Π²Π° Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»Π°.

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Π½Π°ΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ массива A Π½Π° число L.

ΠžΠ±Ρ€-ΠΊΡƒ Π΄Π². массива см. Π Π°ΠΏΠ°ΠΊΠΎΠ² стр.126!

ДСйствия Π½Π°Π΄ массивом ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½Ρ‹ΠΌ Ρ†Π΅Π»Ρ‹ΠΌ

Π’Π°ΠΊΠΈΠ΅ дСйствия допустимы лишь Π² Π΄Π²ΡƒΡ… случаях:

Π’ ΠΎΠ±ΠΎΠΈΡ… случаях массивы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ (Ρ‚ΠΈΠΏ индСксов ΠΈ Ρ‚ΠΈΠΏ элСмСнтов).

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания P := Q всС элСмСнты массива P станут Ρ€Π°Π²Π½Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ элСмСнтам массива Q.

Как ΡƒΠΆΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π»ΠΎΡΡŒ, Π² ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивах пСрСмСнная с индСксом ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΉ массив. НапримСр,

Π“ΠΎΠ΄ ΠœΠ΅ΡΡΡ†
1 2 3 4 5 6 7 8 9 10 11 12
1981-23-17-8714182519125-4-19
1982-17-10-36813282462-13-20
…………………………………
1990-10-15-4913172320108-14-20

Ссли Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ H трСбуСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π° 1989Π³. Π±Ρ‹Π»ΠΈ Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π·Π° 1981Π³. (дСвятой строкС ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строки), Ρ‚ΠΎ это ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ:

А Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами значСния этих строк, Ρ‚ΠΎ это дСлаСтся Ρ‡Π΅Ρ€Π΅Π· Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ°:

Π³Π΄Π΅ P описана Ρ‚Π°ΠΊ:

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ вопросы

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

ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΡ ΠΊ ΡƒΡ€ΠΎΠΊΡƒ

ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ «массив» носит Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€. Π‘Π°ΠΌΡ‹ΠΌ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ способом хранСния большого количСства ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… являСтся массив. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° массивов являСтся основой практичСски любой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Школьник, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΌΠ΅Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ массивы, ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ сСбя Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ программистом.

Бозданная ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ Ρ‚Π΅ΠΌΡ‹ Β«ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы Π² языкС программирования Паскаль» Π² срСднСм ΠΈ ΡΡ‚Π°Ρ€ΡˆΠ΅ΠΌ Π·Π²Π΅Π½Π΅ ΠΎΠ±Ρ‰Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΡˆΠΊΠΎΠ»Ρ‹.

Π’ ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠΈ имССтся Π³Π»Π°Π²Π½ΠΎΠ΅ мСню, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ (ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π΅Ρ†ΠΈΡ), с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ гипСрссылок ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° любой ΠΏΡƒΠ½ΠΊΡ‚ мСню (слайд 2).

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

1. ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив

1.1. ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ «массив»

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

НазваниС рСгулярный Ρ‚ΠΈΠΏ (ΠΈΠ»ΠΈ ряды) массивы ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π·Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² Π½ΠΈΡ… ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Π΅ (логичСски ΠΎΠ΄Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Π΅) элСмСнты, упорядочСнныС (ΡƒΡ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅) ΠΏΠΎ индСксам, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π² массивС. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 1 [13, с.181])

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

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ массив – это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… элСмСнтов, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ΠΎΠ±Ρ‰Π΅Π΅ имя, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт этой ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ опрСдСляСтся порядковым Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ (индСксом) элСмСнта.

ΠœΠ°ΡΡΠΈΠ²Ρ‹ Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ (ΠΎΠ΄ΠΈΠ½ индСкс), Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ (Π΄Π²Π° индСкса) ΠΈ Ρ‚.Π΄.

1.2. ОписаниС ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов

ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив – это фиксированноС количСство элСмСнтов ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ свой ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€, ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° элСмСнтов ΠΈΠ΄ΡƒΡ‚ подряд. (ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 1 [12, с.100])

Для описания ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ слСдуСт ввСсти ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ описания Ρ‚ΠΈΠΏΠΎΠ².

Π’ΠΈΠΏ массив описываСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Имя Ρ‚ΠΈΠΏΠ° = Array [Ρ‚ΠΈΠΏ индСкса (ΠΎΠ²)] Of Ρ‚ΠΈΠΏ элСмСнтов;

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚ΠΈΠΏΠ° массив ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ сразу Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ описания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Var:

Var Имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ: array [Ρ‚ΠΈΠΏ индСкса (ΠΎΠ²)] Of Ρ‚ΠΈΠΏ элСмСнтов;

mas = array [1..20] of real;

Массив Π₯ – ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ, состоящий ΠΈΠ· Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΠΈ элСмСнтов вСщСствСнного Ρ‚ΠΈΠΏΠ°. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ массива хранятся Π² памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ.

ΠŸΡ€ΠΈ использовании ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… для обозначСния индСкса ΠΈΡ… значСния ΠΊ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ использования Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹, Π° Π² случаС арифмСтичСских Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΡ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ минимального ΠΈ максимального значСния индСксов массива.

Π˜Π½Π΄Π΅ΠΊΡΡ‹ элСмСнтов массива ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с любого Ρ†Π΅Π»ΠΎΠ³ΠΎ числа, Π² Ρ‚ΠΎΠΌ числС ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Type bb = Array [-5..3] Of Boolean;

1.3. Π’Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов Π² ПаскалС

Π’Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ массивов осущСствляСтся поэлСмСнтно.

Π’Π²Π΅Π΄Π΅ΠΌ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π₯, состоящий ΠΈΠ· 30 элСмСнтов, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти Π½Π΅ΠΊΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ элСмСнтов Π₯1, Π₯2, …, Π₯30.

ΠŸΡƒΡΡ‚ΡŒ i – индСкс (порядковый Π½ΠΎΠΌΠ΅Ρ€) элСмСнта Π² массивС Π₯. Π’ΠΎΠ³Π΄Π°

Для Π²Π²ΠΎΠ΄Π° массива ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой Ρ†ΠΈΠΊΠ».

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚: Π²Π²ΠΎΠ΄ массива с использованиСм Ρ†ΠΈΠΊΠ»Π° с прСдусловиСм (Рисунок 1).

Говоря ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивах ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ

Var i: integer;

X: array [1..30] of Integer;

Begin

While i 30;

Массив X Π²Π²Π΅Π΄Π΅Π½ с использованиСм Ρ†ΠΈΠΊΠ»Π° с постусловиСм.

Π’Ρ€Π΅Ρ‚ΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚: Π²Π²ΠΎΠ΄ массива с использованиСм Ρ†ΠΈΠΊΠ»Π° с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ (Рисунок 3).

Говоря ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивах ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ

Var i: integer;

X: array [1..30] of Integer;

Begin

For i := 1 To 30 Do Read (X[i]);

Массив вводится с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ†ΠΈΠΊΠ»Π° с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ, Π³Π΄Π΅ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ индСкс элСмСнта массива (i).

Π’Ρ‹Π²ΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива осущСствляСтся Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ.

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ вмСсто ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Read ΠΈΠ»ΠΈ Readln ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Write ΠΈΠ»ΠΈ Writeln. Но просто Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ здСсь нСдостаточно. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ значСния Π½Π΅ сливались ΠΌΠ΅ΠΆΠ΄Ρƒ собой, Π½Π°Π΄ΠΎ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ – ΠΏΡ€ΠΎΠ±Π΅Π» ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ строки. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ Π΄Π²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… способа Π²Ρ‹Π²ΠΎΠ΄Π° массива:

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

НапримСр, Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π₯1, Π₯2, …, Π₯n, состоящий ΠΈΠ· элСмСнтов вСщСствСнного Ρ‚ΠΈΠΏΠ°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ†ΠΈΠΊΠ» с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ (Рисунок 4):

Говоря ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивах ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ

Const n = 30;

Var i: Integer;

X: Array [1..n] Of Real;

Begin

For i:= 1 To n Do Write (X[i] : 6 : 2, β€˜ β€˜);

2. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡

2.1. ВычислСниС суммы ΠΈ произвСдСния элСмСнтов массива, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰ΠΈΡ… Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ.

Π—Π°Π΄Π°Ρ‡Π° 1. Π”Π°Π½ цСлочислСнный ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив, состоящий ΠΈΠ· n элСмСнтов. Найти сумму ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅Ρ‡Π΅Ρ‚Π½Ρ‹Ρ… элСмСнтов, ΠΊΡ€Π°Ρ‚Π½Ρ‹Ρ… 3. (ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΡ)

Π’Π²Π΅Π΄Π΅ΠΌ обозначСния: n – количСство элСмСнтов Π² массивС; А – имя массива; i – индСкс элСмСнта массива; Ai – i-ΠΉ элСмСнт массива A; s – сумма Π½Π΅Ρ‡Π΅Ρ‚Π½Ρ‹Ρ… элСмСнтов массива, ΠΊΡ€Π°Ρ‚Π½Ρ‹Ρ… 3; p – ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅Ρ‡Π΅Ρ‚Π½Ρ‹Ρ… элСмСнтов массива, ΠΊΡ€Π°Ρ‚Π½Ρ‹Ρ… 3.

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: n, A.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: s, p.

ΠŸΡ€ΠΈ просмотрС массива ΠΌΠΎΠΆΠ½ΠΎ сразу Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ элСмСнтов массива, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰ΠΈΡ… Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ. ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ вычисляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° p:=p*A[i]. ΠŸΡ€ΠΈ этом p справа ΠΈ p слСва ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ значСния: p справа – ΡƒΠΆΠ΅ извСстноС, вычислСнноС Ρ€Π°Π½Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ произвСдСния, p слСва – Π½ΠΎΠ²ΠΎΠ΅, вычисляСмоС Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ искомоС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎ Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅, Ρ‚.Π΅. p:=1.

ΠŸΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ этой Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой ΠΈΠ· Π²ΠΈΠ΄ΠΎΠ² Ρ†ΠΈΠΊΠ»ΠΎΠ². Рассмотрим нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ способ. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ†ΠΈΠΊΠ» с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ:

Var A: Array[1..20] Of Integer;

Begin

For i:=1 To n Do Readln (A[i]);

For i:=1 To n Do

If (A[i] mod 2 <>0) and (A[i] mod 3 = 0) Then

Begin

End.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ способ. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ†ΠΈΠΊΠ» с прСдусловиСм:

Var A: Array[1..20] Of Integer;

Begin

Write (β€˜n=’); Readln (n); i:=1;

While i 0) and (A[i] mod 3 = 0) Then

Begin

End; i:= i + 1

2.2. НахоТдСниС количСства элСмСнтов, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰ΠΈΡ… Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ

Π—Π°Π΄Π°Ρ‡Π° 2. Π”Π°Π½ массив Ρ†Π΅Π»Ρ‹Ρ… чисСл. Найти количСство Ρ‚Π΅Ρ… элСмСнтов, значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΈ Π½Π΅ прСвосходят Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ числа А. (ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΡ)

Π’Π²Π΅Π΄Π΅ΠΌ обозначСния: n – количСство элСмСнтов Π² массивС; X – имя массива; i – индСкс элСмСнта массива; Xi – i-ΠΉ элСмСнт массива X; А – Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ число; k – количСство элСмСнтов, значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΈ Π½Π΅ прСвосходят Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ числа А.

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: n, X, A.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: k.

Π’Π²ΠΎΠ΄ΠΈΠΌ с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ числа А. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ элСмСнтов, значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΈ Π½Π΅ прСвосходят Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ числа А, Π²Π½Π°Ρ‡Π°Π»Π΅ ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌ Ρ€Π°Π²Π½Ρ‹ΠΌ Π½ΡƒΠ»ΡŽ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ k:=0. Если ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ элСмСнт массива ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»Π΅Π½ ΠΈ Π½Π΅ прСвосходят Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ числа A, Ρ‚ΠΎ количСство Ρ‚Π°ΠΊΠΈΡ… элСмСнтов Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ k:=k + 1. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ всС элСмСнты массива.

ΠŸΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ этой Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой ΠΈΠ· Π²ΠΈΠ΄ΠΎΠ² Ρ†ΠΈΠΊΠ»ΠΎΠ². Рассмотрим нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ способ. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ†ΠΈΠΊΠ» с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ:

Var X: Array[1..20] Of Integer;

Begin

For i:=1 To n Do Readln (X[i]);

Write (β€˜A=’); Readln (A); k:= 0;

For i:=1 To n Do

If (X[i] >0) and (X[i] n;

Write (β€˜A=’); Readln (A); k:= 0; i:=1;

Repeat

If (X[i] >0) and (X[i] n;

2.3. НахоТдСниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² элСмСнтов, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΡ… Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ свойством

Π—Π°Π΄Π°Ρ‡Π° 3. Найти Π½ΠΎΠΌΠ΅Ρ€Π° Ρ‡Π΅Ρ‚Π½Ρ‹Ρ… элСмСнтов, стоящих Π½Π° Π½Π΅Ρ‡Π΅Ρ‚Π½Ρ‹Ρ… мСстах. (ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΡ)

Π’Π²Π΅Π΄Π΅ΠΌ обозначСния: n – количСство элСмСнтов Π² массивС; X – имя массива; i – индСкс элСмСнта массива; Xi – i-ΠΉ элСмСнт массива Π₯.

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: n, X.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: i.

НСобходимо ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ вСсь массив. Если просматриваСмый элСмСнт являСтся Ρ‡Π΅Ρ‚Π½Ρ‹ΠΌ, Π° Π΅Π³ΠΎ порядковый Π½ΠΎΠΌΠ΅Ρ€ – Π½Π΅Ρ‡Π΅Ρ‚Π½Ρ‹ΠΉ, Ρ‚ΠΎ вывСсти Π΅Π³ΠΎ Π½ΠΎΠΌΠ΅Ρ€. ΠŸΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ этой Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой ΠΈΠ· Π²ΠΈΠ΄ΠΎΠ² Ρ†ΠΈΠΊΠ»ΠΎΠ².

Боставим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ†ΠΈΠΊΠ»Π° с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ:

Var X: Array[1..20] Of Integer;

Begin

For i:=1 To n Do Readln (X[i]);

For i:=1 To n Do

If (X[i] mod 2 = 0) and (i mod 2<>0) Then Write (i:5);

Π—Π°Π΄Π°Ρ‡Π° 4. Найти Π½ΠΎΠΌΠ΅Ρ€ послСднСго ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ элСмСнта массива.

Π’Π²Π΅Π΄Π΅ΠΌ обозначСния: n – количСство элСмСнтов Π² массивС; А – имя массива; i – индСкс элСмСнта массива; Ai – i-ΠΉ элСмСнт массива A; m – Π½ΠΎΠΌΠ΅Ρ€ послСднСго ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ элСмСнта массива.

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: n, A.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: m.

ПослСдний ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт массива – это ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ встрСтится ΠΏΡ€ΠΈ просмотрС массива с ΠΊΠΎΠ½Ρ†Π°. Если ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ элСмСнт Π½Π΅ являСтся ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ индСкса (i:=i-1), ΠΏΠΎΠΊΠ° ΠΎΠ½ Π½Π΅ станСт мСньшС Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта ΠΈΠ»ΠΈ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ m ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ i (Π½ΠΎΠΌΠ΅Ρ€ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ элСмСнта), Ρ‚.Π΅. m := i. Если Π² массивС Π½Π΅Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ элСмСнта, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ m остаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ Π½ΡƒΠ»ΡŽ.

Const n=10;

Var A: Array[1..n] Of Integer;

Begin

For i:=1 To n Do Readln (A[i]);

While (i >= 1) and (A[i] >=0) Do i:=i-1; m:=i;

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

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

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