Нәтиже:
5
4
7
8
9
3
6
2
1
5
7
3
5 4 7 8
9 3 6 2
1 5 7 3
3. A[3,4] екі өлшемді тізімді [1,10] аралығындағы кездейсоқ санмен толтыру және экранға шығару
import random
n=3
m=4
A=[]
for i in range(n):
B=[]
for j in range(m):
B.append(random.randint(1,10))
A.append(B)
for i in range(n):
for j in range(m):
print(A[i][j], end = ' ')
print()
Нәтиже:
1 3 7 2
10 4 2 1
5 6 8 8
Мысал34: Өлшемі N x M 1-ден 10- ға дейінгі кездейсоқ бүтін сандармен толтырылған матрица құрыңдар.
n=int(input("n="))
m=int(input("m="))
import random
for i in range(1,n+1):
print() # жаңа жолға түсіреді
for j in range(1,m+1):
print(random.randint(1,10),end=' ') #бір жолға шығарады
Нәтиже:
n=3
m=4
6 4 5 8
8 1 9 4
6 10 3 10
Екі өлшемді тізімді түрлендіру
Екі өлшемді тізімді түрлендіру бағдарламаларын құруды қарастырайық.
Мысал35. Кездейсоқ сандармен толтырылған матрицаның барлық элементтерінің қосындысын табыңдар.
import random
n=3; m=4;A=[]
for i in range(n): # матрицаны толтыру
B=[]
for j in range(m):
B.append(random.randint(1,4))
A.append(B)
for i in range(n): # матрицаны шығару
for j in range(m):
print(A[i][j], end = ' ')
print()
S=0 # қосынды табу
for i in range(n):
for j in range(m):
S += A[i][j]
print("S=",S) # нәтижені шығару
Нәтиже:
4 1 4 1
1 1 1 3
1 4 3 1
S= 25
Мысал36. Матрицаның барлық элементтерінің көбейтіндісін табыңдар.
p = 1
for i in range(N):
for j in range(M):
p *= matrix[i][j]
print (p)
Мысал37. Кездейсоқ сандармен толтырылған матрицаның әр жолындағы элементтерінің қосындысын табыңдар.
Егер жоғарыдағы бағдарламаның келесі бөлігін:
S=0
for i in range(n):
for j in range(m):
S += A[i][j]
print("S=",S)
төмендегіше жазсақ (қалғанын еш өзгеріссіз қалдырып)
for i in range(n):
S=0
for j in range(m):
S += A[i][j]
print("S=",S,end=‘’)
онда, келесі нәтиже шығады:
4 2 3 2
3 2 3 2
1 3 1 1
S= 11 S= 10 S= 6
Мысал38. n өлшемді квадрат матрицаның негізгі диагоналын 1, негізгі диагонал үстін 0, негізгі диагонал астын 2 сандарымен толтырып, пайда болған матрицаны шығарыңдар.
Төмендегі бағдарламада алдымен матрицаны кездейсоқ санмен толтыру орындалады. Сонан соң, жоғарыдағы әрекет орындалады.
import random #матрицаны кездейсоқ сандармен толтыру
n=4; A=[]
for i in range(n):
B=[]
for j in range(n):
B.append(random.randint(1,10))
A.append(B)
for i in range(n): #матрицаны шығару
for j in range(n):
print(A[i][j], end = ' ')
print()
for i in range(n): #матрицаны түрлендіру
for j in range(n):
if i < j:
A[i][j] = 0
elif i > j:
A[i][j] = 2
else:
A[i][j] = 1
print() #матрицаны қайта шығару
for i in range(n):
for j in range(n):
print(A[i][j], end = ' ')
print()
Нәтиже:
бастапқы матрица:
5 10 1 4
9 9 8 9
6 1 3 8
2 7 1 9
түрлендірілген матрица:
1 0 0 0
2 1 0 0
2 2 1 0
2 2 2 1
Квадрат матрицада негізгі және қосалқы диагонал үшін бір ғана цикл қолдануға болады:
for i in range(n):
A[i][i] # негізгі диагонал
A[i][n-1-i] # қосалқы диагонал
Мысал39. n өлшемді квадрат матрицаның негізгі және қосалқы диагоналындағы элементтердің қосындысын табыңдар.
import random
n=4
A=[]
for i in range(n):
B=[]
for j in range(n):
B.append(random.randint(1,10))
A.append(B)
for i in range(n):
for j in range(n):
print(A[i][j], end = ' ')
print()
S1=0;S2=0
for i in range(n):
S1+=A[i][i] # негізгі диагонал
S2+=A[i][n-1-i] # қосалқы диагонал
print('S1=',S1,'S2=',S2)
Нәтиже:
7 10 2 1
1 6 1 3
6 6 6 3
10 6 1 10
S1= 29 S2= 18
Матрицаның k-ші және n- бағандарын алмастыру төмендегіше жүзеге асады:
for i in range(n):
c = A[i][k]
A[i][k] = A[i][n]
A[i][n] = c
Мысал40. Матрицаның 2-ші және 4- бағандарын алмастырып, пайда болған матрицаны экранға шығарыңдар.
import random
n=4
m=4
A=[]
for i in range(n):
B=[]
for j in range(m):
B.append(random.randint(1,4))
A.append(B)
for i in range(n):
for j in range(m):
print(A[i][j], end = ' ')
print()
for i in range(n): #алмастыру
c = A[i][1]
A[i][1] = A[i][3]
A[i][3] = c
print()
for i in range(n): #матрицаны шығару
for j in range(m):
print(A[i][j], end = ' ')
print()
Нәтиже:
бастапқы матрица алмасқан матрица
7 9 8 1 7 1 8 9
3 8 4 10 3 10 4 8
8 5 7 10 8 10 7 5
9 10 6 1 9 1 6 10
Матрица элементтерін алмастыру жасаудың екінші тәсілі бар. Ол төмендегіше жүзеге асады:
for i in range(n):
A[i][2], A[i][4] = A[i][4], A[i][2]
Мәндер арасына үтір қойылып жазылады.
Жоғарыдағы бағдарламадағы алмастыру бөлігінің орнына осы екі жолды жазуға болады.
Достарыңызбен бөлісу: |