Программалар құру -9 дәріс Тізімдер және кортеждер Сұрақтар


for n in m: print(n, end=' ')



Pdf көрінісі
бет32/32
Дата30.04.2024
өлшемі2,52 Mb.
#201575
түріПрограмма
1   ...   24   25   26   27   28   29   30   31   32
Байланысты:
8-9- дәріс - Тізімдер мен кортеждерМ

for n in m:
print(n, end=' ')
print()
6. Тізімдегі барлық сандар қосындысын қабаттасқан 
for
циклдеріндегі
range()
функциясы арқылы табу:
m=3; n=4
a = [[5,2,3,1], [8,7,11,9], [1,2,2,8]]
s = 0
for i in range(m):
for j in range(n): 
s += a[i][j]
print('s =',s)
Нәтиже:
11 12 13 14 
15 16 17 18 
19 20 21 22
Нәтиже:
s = 59


7. Екі өлшемді жиым жолдарының қосындысы:
a = [[5,2,3,1], [8,7,11,9], [1,2,2,8]]
# жиым жолдарының қосындысы
for 
row 
in 
a:
s = 0
for 
elem 
in 
row:
s += elem
print(row,
'\ts ='
,s)
Жиым бағаналарының қосындысы:
a[3][4] жиымын шығарып, оның бағаналары қосындысын табу үшін 
бағаналар мен жолдар орнын алмастыра отырып табу керек болады.
Екі өлшемді тізімді өңдеу 
Нәтиже:
[5, 2, 3, 1]
s = 11
[8, 7, 11, 9]
s = 35
[1, 2, 2, 8]
s = 13


8. Жиым бағаналарының қосындысы: 
# a[3][4] жиымын шығару, бағаналар қосындысын табу
m=3; n=4
a = [[5,2,3,1],[8,7,11,9],[1,2,2,8]]
# жиымды шығару
for 

in 
range(m):
for 

in 
range(n):
print(a[i][j],
'\t'
, end=
''
)
print()
print(
'--------------'
)
# a[3][4] жиымының бағаналары қосындысы
for 

in 
range(n):
s = 0
for 

in 
range(m):
s += a[j][i]
print(s, 
'\t'
, end=
''
)
Нәтиже:






11 





----------------
14 
11 
16 
18 
Екі өлшемді тізімді өңдеу 


Екі өлшемді тізімді өңдеу 
9. Жиымды кездейсоқ сандармен толтырып алып, жиым жолдары мен 
бағаналарының қосындысын табу
from 
random 
import 
random
M = 
4; 
N = 
3

3 жол 4 бағана
a = []

а жиымы үшін бос тізім құру
for 

in 
range
(N):
b = []

жолдар қосындысы үшін бос тізім құру
for 

in 
range
(M):
b.append(
int
(random() * 
11
))
print
(
"%3d" 
% b[j], 
end
=
''
)
a.append(b)
print
(
' |'

sum
(b))
for 

in 
range
(M):
print
(
" --"

end
=
''
)
print
()
for 

in 
range
(M):
s = 
0
for 

in 
range
(N):
s += a[j][i]
print
(
"%3d" 
% s, 
end
=
''
)
print
()
Нәтиже:
7 7 1 5 | 20
8 7 2 2 | 19
9 6 7 8 | 30
-- -- -- --
24 20 10 15


10. Екі өлшемді квадрат матрицаны өңдеу тәсілдері
Екі өлшемді тізімді өңдеу 
Мұнда жолдар 
саны мен баға-
налар саны 
бірдей болады.
m=n=4


Екі өлшемді квадрат матрицаны өңдеу тәсілдері,
төмендегі
i
– жол нөмірлері, ал 
j
– бағана нөмірлері

Бас диагональ элементтерінің қасиеті:
i=j

Бас диагональдан жоғары элементтер қасиеті:
i

Бас диагональдан төмен элементтер қасиеті:
i>j

Қосалқы диагональ элементтерінің қасиеті:
i+j=n-1

Қосалқы диагональдан жоғары эл-тер қасиеті:
i+j

Қосалқы диагональдан төмен эл-тер қасиеті:
j+j>n-1
Енді бас және қосалқы диагональ элементтерін өңдей аламыз.
Екі өлшемді тізімді өңдеу 


4 жол мен 4 бағанадан тұратын квадрат матрицаны төмендегідей түрде (ақ түсті) 
толтыру керек болсын делік.
1 0 0 0
2 1 0 0
2 2 1 0
2 2 2 1
A[4][4] (
A[i][j] 
) жиымының бас диагональ элементтерін (
i==j
)
1
-мен толтырамыз, бас диагональдан жоғары тұрған элементте-
терін (
i
2
-мен, ал бас диагональдан төмен орналасқандарын
(
i>j

0
-мен толтыру керек. Сонда келесі алгоритм аламыз.
n = 4 # 
тізімді 0-мен толтыру
a = [[0] * n for i in range(n)]

нөлдік жиымды шығару
for i in range(n):
print(a[i])
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

нәтижелік жиымды шығару 
for i in range(n):
print(a[i])
print('-----------')
[0, 0, 0, 0]
[0, 0, 0, 0]
[0, 0, 0, 0]
[0, 0, 0, 0]
-------------
[1, 0, 0, 0]
[2, 1, 0, 0]
[2, 2, 1, 0]
[2, 2, 2, 1]
Нәтиже:


СОҢЫ...


Достарыңызбен бөлісу:
1   ...   24   25   26   27   28   29   30   31   32




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

    Басты бет