Бірөлшемді массив

► Біртипті деректердің үлкен массивін (ауқымын) Python программалау тілінде қалай өңдеуге болады?

Массив

Ойлан

♦ Массив ұғымын қалай түсінесің?

♦ Күнделікті өмірде біртипті деректердің үлкен көлемімен жұмыс істеуге қандай мысалдар келтіре аласың?

Массив – (француз тілінен аударғанда massif – қуатты, тұтас дегенді білдіреді) біртекті заттар немесе нысандардың тұтас алғандағы жиынтығын білдіретін ұғым. Мысалы, тұрмыста тұрғын үй массивтері (тұрғын аудандар), орман массивтері (орман алқаптары) деген сияқты ұғымдармен бірге қолданылады (1-сурет).
​Массив біртипті деректердің бірізділігі, оның элементтері әртүрлі индекстермен ерекшеленетін ортақ атаумен біріктірілген.
​Математикада да, программалауда да массив (жиын) ретінде сандар тізбегі қарастырылады. Мысалы, 2, 4, 6, ... – жұп сандар тізбегі. Математика мен программалауда массив а1, а2, ..., аn–1, an сияқты формуламен өрнектеледі. Программалауда мұндай тізбекті бірөлшемді массив деп қарастырады. Бірдей типті деректерді өңдеуде массивтің рөлі өте жоғары. Деректердің бұл түрі сандық тізбектерді белгілеу үшін пайдаланады десек, онда барлық сандар тобы бірдей атпен (көбінесе бір әріппен) белгіленеді. Массивке қатысушылар массив элементтері, элементтердің массивтегі орны элемент индексі деп аталады. Компьютерде өте үлкен мөлшердегі біртипті деректерді өңдеуде массивтер кеңінен қолданылады.
​Мысалы, қаладағы телефон абоненттерінің нөмірлері, емтиханға қатысқан оқушылардың алған бағасы т.б.

1-сурет. Тұрғын үй массиві

Массивтің түрлері:

бірөлшемді массив;
екіөлшемді массив;
көпөлшемді массив

Массивтің типтері:

сандық;
мәтіндік;
символдық.

Массивтің ерекшелігі:

элементтердің барлығы біртипті;
элементтер бір атаумен аталады;
элементтер жадта қатар орналасады.

Бірөлшемді массивтер

Бірөлшемді массив

Массивтің атауы, мүшелері (элемент), мүшелерінің саны (массив ұзындығы) және қабылдайтын мәні сияқты параметрлері болады. Мысалы, төменде 1-сызбада массив атауы А, массив ұзындығы n = 8 болған жағдайдағы құрылымы берілген.

1-сызба. Массив құрылымы

Программалау тілдерінде негізінен біртипті деректерді массив көмегімен өңдейді. Python программалау тілінде де массив қолданылады. Сонымен бірге бұл программалау тілінде массивтермен бір қатарда тізімде қолданылады. Python-да басқа программалау тілдеріндегідей массив элементтері тек бірдей типтерден тұратын болса, тізімдер үшін мұндай шектеу жоқ. Тізімнің элементі сан, символ немесе жол болып араласып келуі де мүмкін. Массивтің басқа программалау тілдерінен ерекшелігі, индекстері 1-ден емес, 0-ден бастап нөмірленеді. Python-да массивтерді қарастыру барысында массив және тізім ұғымдарын бірдей ұғым ретінде қарастырамыз.

Мысалы, төмендегі программа кодында А массив 5 элементтен тұрады. Массивті экранға шығару үшін А массивін көрсетіп, орындау пернесін басу жеткілікті (1-код).

Егер А массивін А[Х:У:Z] түрінде берсек, массив элементтерін X-тен бастап, Y-ке дейін Z қадаммен экранға шығарады (2-код). Z = 1 болса, онда жазудың қажеті жоқ. Массив X-тен бастап, Y-ке дейін 1 қадаммен экранға шығады.

Python-да массивтің орындарын соңы-нан бастап та оқуға болады. Соңынан басталғанда ол 1-ден басталады. А массиві үшін кері қарай –1, –2, –3, –4, –5 индекстері жазылады. Бұл жерде А[0] = A[–5]. Екеуі де бір элементке сілтеме жасап тұр (2- код).

Массив элементтерін басынан не соңы-нан белгілі бір орынға дейін шығаруға болады (3-код). Массивті басынан белгілі бір орынға дейін шығару үшін А[:К], К – орын (индекс) жазылады.

Массивті белгілі бір орыннан соңына дейін шығару үшін А[ К: ], К –орын (индекс) жазылады (3-код).

1-код

>>>А = [45, 25, 30, 20, –40]

>>>А

[45, 25, 30, 20, –40]

2-код

>>>А = [45, 25, 30, 20, –40]

>>> А[0 : 5 : 2]

[45, 30, –40]

>>> А[2 : 4]

[25, 30, 20]

>>> А[–1], А[–5]

[-40], [45]

>>> А[0], А[–5]

[45], [45]

3-код

А= [45, 25, 30, 20, –40]

А[:3]

[45, 25, 30]

А = [45, 25, 30, 20, –40]

А[ 3:]

[20, –40]

Бір өлшемді массив элементтерін енгізу

Бірөлшемді массив элементтерін енгізу үшін from array import array-мен таныстырасың.

N=int(input()) – массивтің ұзындығын енгізеді.

input()) операторы арқылы енгізілген деректер жолдық дерек болады. Оны санға айналдыру үшін int-ті пайдаланасың.

A=[0]*N компьютер жадынан массив элементтері үшін ұзындығы N орын бөледі. Мысалы, N=10 жағдайында A = [0, 0, 0, 0, 0 , 0, 0, 0, 0, 0] for i in range (0,N): i үшін цикл мәні 0 мен 9 арасында өзгереді.

A[i] = int(input()) – программа қатары массив элементтерін пернетақтадан жеке-жеке енгізеді.

from array import array

A=array("i")

N=int(input())

A=[0]*N

for i in range(0,N):

A[i] = int(input())

print(A[4:])

Практикалық жұмыс

Қосынды. Ұзындығы N-ге тең А[N] массиві берілген (N<100). Осы массивтегі оң элементтердің қосындысын тап.

Мысалы

5

1

–2

6

–9

10

Нәтиже

17

from array import array
​A=array("i")
​N=int(input())
​S=0
​A=[0]*N
f​or i in range(0,N):
​A[i] = int(input())
​for i in range(0,N):
​if A[i] > 0 :
​S+=A[i]
​print(S)

Ойыңды тұжырымда

Талдау

Массивтің атқаратын қызметіне талдау жасаңдар. Массив элементтерін енгізу цикл көмегімен қалай жүзеге асады? Түсіндіріп беріңдер.

Жинақтау

Өздеріңе таныс күнделікті қолданып жүрген біртипті деректерден 2 массив құрап, оны ұсыныңдар. Мысалы, сыныптағы 20 оқушының бойының ұзындығын алуға болады.

Бағалау

Массивтің математика және программалаудағы маңызы жайлы пікір алмас.

Жеке жұмыс

1. Массив дегеніміз не?

2. Бірөлшемді массив дегеніміз не?

3. Python-да тізім мен массивтің қандай айырмашылығы бар?

4. Python-да массив қалай таныстырылады?

Өтінемін күте тұрыңыз