Екі өлшемді массив Массив– бұл бір атаумен белгіленіп біріктірілген элементтер жиыны



Дата14.02.2022
өлшемі68,39 Kb.
#131725
Байланысты:
Массив

Екі өлшемді массив

Массив– бұл бір атаумен белгіленіп біріктірілген элементтер жиыны.


Бірөлшемді
Екіөлшемді
Жалпы бірөлшемді массив математикада вектор, ал екіөлшемді массив матрица ұғымдарымен сәйкес келеді. Егер массив атауында бір ғана индекс болса, онда ол массивті бірөлшемді, ал екі индекс болса — екіөлшемді дейді.
Жиі тапсырмаларда деректермен тікбұрышты кестелерді сақтау керек. Мұндай кестелер матрицалар немесе екі өлшемді массивтер деп аталады. Бағдарламалау тілінде Питон кестені жолдар тізімі ретінде ұсынуға болады, оның әрбір элементі өз кезегінде тізім болып табылады, мысалы, сандар. Мысалы, екі жол мен үш бағаннан сандық кестені жасауға болады:
A = [[1, 2, 3], [4, 5, 6]]
Мұнда тізімнің бірінші жолы [0] [1, 2, 3] сандардың тізімі болып табылады. Яғни A[0][0] == 1, мәні A[0][1] == 2, A[0][2] == 3, A[1][0] == 4, A[1][1] == 5, A[1][2] == 6.
Тізімді өңдеу және шығару үшін әдетте екі ішкі цикл қолданылады. Бірінші цикл жол нөмірі бойынша, екінші цикл жол ішіндегі элементтер бойынша. Мысалы, екі өлшемді сандық тізімді экранға әр жол сайын шығарып, бір жолдың ішіндегі Бос орындар санын бөлісе аласыз:
for i in range(len(A)):
for j in range(len(A[i]):
print(A[i][j], end=' ')
print()
Бірдей, бірақ циклдер индекс бойынша емес, тізімнің мәндері бойынша:
for row in A:
for elem in row:
print(elem, end=' ')
print()
Әрине, бір жолды шығару үшін join әдісін қолдануға болады:
for row in A:
print(' '.join(list(map(str, row))))
Тізімдегі барлық сандардың сомасын есептеу үшін екі ішкі циклді қолданамыз:
S = 0
for i in range(len(A)):
for j in range(len(A[i])):
S += A[i][j]
Немесе циклмен бірдей индекс бойынша емес, жолдардың мәндері бойынша:
S = 0
for row in A:
for elem in row:
S += elem
Бағдарлама екі өлшемді массивке кіруге мүмкіндік берсін, олардың әрқайсысы бос орындармен бөлінген m сандарды қамтитын N жолдар түрінде. Оларды қалай есептеуге болады? Мысалы, осылай:
A = []
for i in range(n):
A.append(list(map(int, input().split())))
Немесе күрделі ішкі опциялар қоңырауларын пайдаланбай:
A = []
for i in range(n):
row = input().split()
for i in range(len(row)):
row[i] = int(row[i])
A.append(row)

Достарыңызбен бөлісу:




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

    Басты бет