Практикалық жұмыс 12 Екі өлшемді массивтермен жұмыс Жұмыстың мақсаты



бет1/5
Дата15.11.2022
өлшемі204,16 Kb.
#50265
  1   2   3   4   5

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


Екі өлшемді массивтермен жұмыс


Жұмыстың мақсаты: Python-да екі өлшемді массивтермен жұмыс жасауды үйрену.

Матрица деп тіктөртбұрышты кесте түрінде берілген массив элементтерін айтуға болады. Олар үшін қандайда бір математикалық әрекет тағайындалған. Матрица элементтері ретінде сандар, алгебралық символдар немесе математикалық функцияларды көрсетуге болады.

Python матрицаларымен жұмыс істеуде тізімдер де қолданылады . Тізім матрицаның әрбір элементі кіріктірілген тізімнен тұрады. Осылайша кіріктірілген тізімдер құрылымы пайда болады, мұндағы тізімдер саны матрица бағанының санын, ал тізім ішіндегі элементтер саны матрицадағы жолдар санын білдіреді.


1. Тізім құру
Екі сан берілсін: n жолдар саны және mбағандар саны. n×m өлшемді тізім құру керек, тізім 0-дермен толтырылған болсын. төмендегі шешім қате болған болар еді:

A = [ [0] *m ]*n

Себебі, егер A[0][0] элементіне 1 мәнін беріп, сондан кейін басқа A[1][0] элементін шығаратын болсақ, онда ол да 1 болады. Себебі, [0] * m командасы m нөлден тұратын сілтемені қайтарады. Бұл элементтің келесі қайталаулары n элементтен тұратын тізім құрайды, олар бір тізім сілтемелері болып табылады ( B = A амалы сияқты, тізімдер үшін жаңа тізім құруды талап етпейді), сондықтан, нәтиже тізімінің барлық жолдары негізінде сол бір жол болып табылады. Олай болса, екі өлшемді массивті бір жолды қайталау амалын қолданып құруға болмайды!

Бірінші әдіс.
Алдымен n элементтен тұратын тізім құрып аламыз (басында тек қана 0-дер болсын). Ары қарай тізімнің әрбір элементін басқа m элементтен тұратын бірөлшемді массивке сілтеме жасаймыз:

n=3;
m=3;


A = [0] * n
for i in range(n):
A[i] = [0] * m
print(A)



Жауабы:


Екінші әдіс
Бос тізім құрып, кейін оған n рет жаңа элемент қосу арқылы тізім жолдарын құрамыз:

n=3;
m=4;


A = []
for i in range(n):
A.append([0] * m)
print(A)










Достарыңызбен бөлісу:
  1   2   3   4   5




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет