Г и сал­ға­раева к а ка­лы­мо­ва ж а орын­таева информатика



Pdf көрінісі
бет70/122
Дата11.05.2022
өлшемі4,51 Mb.
#142180
түріКнига
1   ...   66   67   68   69   70   71   72   73   ...   122
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


97
a = arr.array('i', )
S1 = 0
S2 = 0
Sum = 0
P = 1
#масс ті кранға шығару функ
сы
def print Array(array):
for i in range(len(array)):
print(array[i], end=" ")
print(' n')
#масс ті кездейсоқ айнымалы м ндермен толтыру 
for i in range(20):
a.append(random.randint(1,100))
#масс тің мазм нын кранда басы шығару
print Array(a)
# клде қажетті есе теулерді орындау:
for i in range(size):
if a[i] 2 == 0:
S1 += a[i]
if a[i] 2 != 0:
S2 += a[i]
if a[i] < 30:
Sum += a[i]
if i == 2 or i==9:
P *= a[i]
maximum_1 = max(a)
minimum_1 = min(a)
maximum = a[0]
minimum = a[0]
for i in range(len(a)):
if a[i] > maximum:
maximum = a[i]
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


98
if a[i] < minimum:
minimum = a[i]
# ро рамманың н ж желерін көрсету:
print("zhup elementter kosyndysy: ", S1)
print("tak elemetter kosyndysy: ", S2)
print("Min: ", minimum, maximum_1)
print("Max: ", maximum, maximum_1)
print("30 deyingi elementter kosyndysy: ", Sum)
print("2 nemese 9 indexti elementter kobeitin
-
disi: ", P)
Жауап­берейік
1. Мас сив эле ме нт те рін бел гі лі бір па ра ме тр лер мен қа лай 
із деу ге бо ла ды?
2. 
Max 
және
min 
массивін табу алгоритмі қалай орында-
лады?
Себебін­анықтайық
Мас сив эле ме нт те рін бел гі лі бір па ра ме тр лер мен із деу 
әді сі ту ра лы қыс қа ша си пат та ма бе рі ңдер. Осы мә се ле лер ді 
ше шу дің мә ні не де? Массив элементтеріне қол жеткізу 
қалай орындалады, массив элементтерінің қосындысы мен 
көбейтіндісі қалай есептеледі?
Талдап,­салыстырайық
Бірөлшемді мас сив тің бар лық эле ме нті нің қосындысы 
оңай есептеледі. Еш қан дай шартсыз, бар лық эле ме нті рет-
ретімен, ке зек пен орналасады.
sum += massiv[i]
Массивтің барлық элементтерінің көбейтіндісін есептеу 
формуласы қандай болады? Салыстырыңдар.
Дәптерге­орындайық
Array 
массивімен бірнеше амалды орындаңдар:
1. Мас сив тің бар лық эле ме нт те рінің қосындысын (
S
) та-
быңдар.
2. Мас сив тің бар лық эле ме нт те рі нің көбейтіндісін (
P
) та-
быңдар.
Сұрақтарға­жауап­берейік
Ойланайық,­талқылайық
Тал­дап,­салыстырайық
Дәптерге­орындайық
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


99
Компьютерде­орындайық
1. Есеп теу лер дің нә ти же ле рін тек се ріңдер.
for i in range(size):
S += Array[i]
for i in range(size):
P1 *= Array[i]
2. CD дискіден осы тақырыпқа сәйкес тапсырманы 
орындаңдар.
Ой­бөлісейік
Сабақта не білдіңдер? Не үйрендіңдер? Өз ойларыңды 
достарыңмен бөлісіңдер, алған жаңа білімдеріңді күнделікті 
өмірде қандай жағдайда қолдануға болады? Неге назар ау-
дару қажет?
Үй­тапсырмасы
Array 
қызметші сөзін пайдаланып, массив эле мент-
терімен бірнеше амал орындаңдар: 
1. Мас сив тің оң эле ме нт те рі нің (
S
) қо сын ды сын та бы ңдар.
2. Мас сив тің те ріс эле ме нт те рі нің (
P
) кө бей тін ді сін 
табыңдар. 
Компьютерде­орындайық
Ой­бөлісейік
Үй­тапсырмасы
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


100
§ 20. Прак ти кум. Эле ме нт тер дің ор нын ау ыс ты ру 
Массив элементтерінің орнын ауыстыру алгоритмін қарас-
тырайық. Ол үшін бірінші айнымалы мәнін уақытша жылжы-
татын айнымалы ұяшықты (буфер) пайдалану керек. Содан 
кейін бірінші айнымалы мен екінші айнымалы мәнін араласты-
рамыз. Ал аралықтағы бірінші айнымалының сақталған мәні 
екінші айнымалыға ауысады. Бұл рәсім кесте ретінде мынадай 
түрде жазылады:
7
–5
9
1
0
–2
4
3
6
Buf
8
0
2
3
4
5
6
7
8
9
1
buf=a[0]
a[0]=a[1]
a[1]=buf
–5
7
9
1
0
–2
4
3
6
8
0
2
3
4
5
6
7
8
9
1
1-тап сыр ма.
 
Х массивіндегі жұп индексті элемент пен тақ 
индексті элементтің орындары ауысатындай етіп, оларды 
керісінше орналастырып, кейін у массивіне әкеліп қойыңдар.
import array as arr
x = arr.array('i')
print("x:", end="")
n = 10
x = input().split()[:n]
y=x
for i in range(10):
if i 2 == 0:
c = x[i]
x[i]=x[i+1]
x[i+1]=c
y[i] = x[i]
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


101
print("y:", end="")
for i in range(len(y)):
print(y[i], end=" ")
Программа нәтижесі 
(
18-су рет
)
:
==============
RESTART: C:\Users\Admin\Documents\123.ру 
==============
х: 7 
1 8 2 9 3 6 4 9 5
у: 1 7 2 8 3 9 4 6 5 9
>>>
18-су рет. 
Прог рам ма нә ти же сі
2-тап сыр ма.
 
Бе ріл ген мас сив те гі ең үлкен және ең кіші (
max
жә не 
min
) мән де рді ау ыс ты рың дар.
import array as arr
x = arr.array('i')
print("x=", end="")
n = 10
x = input().split()[:n]
max = x[0]
min = x[0]
for i in range(len(x)):
if x[i] > max:
max = x[i] 
elif x[i] < min:
min = x[i]
imax=x.index(max)
imin=x.index(min)
print("Max: ", max, "Index of max element:", imax)
print("Min: ", min, "Index of min element:", imin)
b = x[imin]
x[imin] = x[imax]
x[imax] = b
for i in range(len(x)):
print(x[i],end=' ')
print()
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


102
Прог рам ма нә ти же сі 
(
19-су рет
)
:
============
RESTART: C:\Users\Admin\Documents\max min.ру 
============
х=7 
8 9 -4 5 6 1 2 3 0
Max: 9 Index of max element: 2
Min: -4 Index of min element: 3
7 8 -4 9 5 6 1 2 3 0
>>>
19-су рет. 
Прог рам ма нә ти же сі
3-тап сыр ма.
n элементтері бар сандық мәндердің бірөлшемді 
массиві берілген. Массив элементтерін айналдыра оңға қарай 
жылжыту керек: 
А[1] 

А[2]; А[2] 

А[3]; ... А[n] 

А[1]
import random
n=random.randint(1,20)
arr=[random.randint(0,100) for i in range(n)]
print(arr)
for i in range(n):
arr[-i], arr[-i-1]=arr[-i-1], arr[-i]
arr[0], arr[1]=arr[1], arr[0]
print(arr)
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


103
§ 21. Прак ти кум. Массив элементтерін сұ рып тау
Массив элементтерін сұрыптауға массивтің элементтерінің 
өсу немесе кему тәртібімен орналасу жатады. Сұрыптау 
массивтің элементтерін түрлі әдістермен ауыстыру арқылы 
жүзеге асырылады.
Көпіршікті сұрыптау
деп аталатын сұрыптау әдісін 
қарастырайық (айырбастау әдісі деп те аталады). Python тілінде 
жазылу алгоритмі мен программалау түрі көрсетіледі.
Реттелген массив бастапқы тізбек тұрған жадыда құралады. 
Бұл әдістің мақсаты – көршілес тұрған элементтерді бір-бірімен 
салыстыру.
Әрбір қадам жаңа жүйеліліктен басталады. Массивтің
бірінші элементі екіншісімен салыстырылады, егер олардың 
арасындағы реттілік бұзылса, орындарын ауыстырамыз. Содан 
кейін екінші мен үшіншісі, үшінші мен төртіншісі және т.с.с. 
массивтің соңына дейін салыстырылып, жұптағы реттелмеген 
элементтердің орындары ауыстырылады.
Нәтижесінде бірінші қадамнан кейін ең үлкен (ең кіші эле-
мент сұрыптау түріне қарай өсу/кему) элемент массивтің ең 
соңына жазылады. Әрбір элемент «қалқып» жоғары шығып 
отырады, сол себепті бұл сұрыптау 
көпіршікті
деп аталады.
Келесі қадамда 1-ден N–1-ге, одан кейін 1-ден N–2-ге, осылай 
соңына дейін тізбек қарастырылады. Әрбір қадамнан соң
элементтердің орын ауысқандығын тексеруге болады. Егер жоқ 
бол са, сұ рып тау аяқ тал ды.
1-тап сыр ма.
 
Pytһon прог рам ма лау ті лін де сұ рып тау ал го-
рит мі ен гі зілген:
import array as arr
#n – лементтер саны
n = int(input("Number of elements: "))
mass = arr.array('i')
#масс ті толтырамыз
for i in range(n):
print (i+1, end="-")
mass.append(int(input("element: ")))
#баста қы масс ті шығару
print ("Initial array: ", end=" ")
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


104
for i in range (len(mass)):
print (mass[i], end=" ")
print (" n")
#масс ті кему ретімен с ры тау
for i in range(n):
for j in range(n-1):
if mass[j] < mass[j+1]:
#орын ауыстыру
temp = mass[j]
mass[j] = mass[j+1]
mass[j+1] = temp
#с ры талған масс ті шығару
print ("Final array: ", end=" ")
for i in range(len(mass)):
print(mass[i], end=" ")
Программа нәтижесі 
(
20-су рет
)
:
20-су рет. 
Прог рам ма нә ти же сі
Python программалау тілінде өсу реті бойынша сұ рып тау
sorted()
функциясы арқылы жүзеге асырылады. Тізбектің 
элементтерін кері тәртіпте көрсету үшін 
reverse
пайдаланылады.
Өсу реті бойынша:
my_list = [2,6,9,1,3,7,4]
a = sorted(my_list)
print(a) # [1,2,3,4,6,7,9]
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


105
Кему реті бойынша:
my_list = [2,6,9,1,3,7,4]
a = sorted(my_list, reverse = True)
print(a) # [9,7,6,4,3,2,1]
2-тап сыр ма. 
Python программалау тілінің консолдық 
прог рам масындағы массивті есептеп, нәтижесін көпіршіктеп 
сұрыптау әдісімен экранға шығарудың үлгісі.
import array as arr
n = int (input("Number of elements: "))
mass = arr.array('i')
for i in range(n):
print (i+1, end="-i")
mass.append(int(input("element: ")))
print("Initial array: ", end=" ")
for i in range(n):
print(mass[i], end=" ")
print(" n")
noSwap = True
passnum = n-1
while passnum > 0 and noSwap:
noSwap = False
for i in range(passnum):
if mass[i] > mass[i+1]:
noSwap = True
temp = mass[i]
mass[i] = mass[i+1]
mass[i+1] = temp
passnum = passnum - 1
print("Final array: ", end=" ")
for i in range(n):
print(mass[i], end=" ")
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


106
Прог рам ма ның ко дын тал дап кө рейік. Қа жет кі тап ха на-
лар ды (1-жол) қо сып, N мас сив те гі эле ме нт тер са нын ен гі зіп 
жә не N-ді (3-жол) са нап, мас сив құ ра мыз (4-жол), пай да ла ну-
шы ға мас сив тің эле ме нт те рін ен гіз іп, мас сив тің эле ме нт те рі не 
(6–8-жол дар) кө пір шік ті сұ рып тау әді сін орын дай мыз (16–26-
жол дар), эк ран да сұ рып тал ған мас сив ті көр се теміз (29–31). 
Программа төмендегі суретте көрсетілген
 
(
21-су рет
)
:
21-су рет. 
Прог рам ма нә ти же сі
3-тап сыр ма.
Кестеде Нұр-Сұлтаннан Қа зақ стан ның кей бір
қа ла ла ры на дей ін гі ара қа шық тық жазылған. Қа ла лар ға де йін гі 
қа шық тық берілген рет бойынша шығатындай, прог рамма 
құрыңдар:
S={1224, 196, 1505, 426, 276}
ҚР­
қа­ла­ла­ры
Ал­ма­ты
Қа­ра­ған­ды Шым­кент ­Пав­ло­дар­ ­Көк­ше­тау
S, км
1224 км
196 км
1505 км
426 км
276 км
АРМАН
-
ПВ
 
баспасы
Все
учебники
Казахстана
на
OKULYK.KZ
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17 
мая
2019 
года

217


107


Достарыңызбен бөлісу:
1   ...   66   67   68   69   70   71   72   73   ...   122




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

    Басты бет