for j in range(3):
print("i is {} and j is {}". format(i, j))
б)
0
1
2
3
4
5
6
7
8
9
i is 0 and j is 0 i is 0 and j is 1 i is 0 and j is 2 i is 1 and j is 0 i is 1 and j is 1 i is 1 and j is 2 i is 2 and j is 0 i is 2 and j is 1 i is 2 and j is 2 i is 3 and j is 0 i is 3 and j is 1 i is 3 and j is 2 i is 4 and j is 0 i is 4 and j is 1 i is 4 and j is 2
Нәтижелері:
а) б)
for циклінің мысалдары
2-мысал: Сандар тізімі (жиым элементтері тәрізді) берілген. Сол тізімдегі сандардың әрқайсысын 2-ге арттыру керек.
for циклі арқылы тізім элементтерін толық қарастыра отырып, олардың әрқайсысын 2-ге арттырамыз.
tizim = [0,10,20,30,40,50,60,70,80,90]
3-мысал: Тіркес символдарын біртіндеп өңдеу және араларына басқа
символдар кірістіру
str = 'Сәлем'
for әріп in str:
print(әріп)
for әріп in str:
print(әріп, end = '')
print()
for әріп in str:
print(әріп, end = '!')
print()
for әріп in str:
print(әріп, end = '?!')
Нәтижесі:
С
ә л е м
Сәлем
С!ә!л!е!м!
С?!ә?!л?!е?!м?!
while циклі (бұл да қабаттасып жазыла береді)
while операторы қасындағы өрнегі ақиқат болып тұрса, келесі блоктағы операторларды қайталап орындай береді:
a)
str1 = "+"
i = 0
while i < 10:
print (str1) i += 2
б)
str1 = "+" i = 0
while i < 10:
print (str1, end='')
i += 2
Нәтижесі:
+
+
+
+
+
Нәтижесі:
+ + + + +
а)
б)
while циклі
3- мысал: Фибоначчи сандарын шығару:
0, 1, 1, 2, 3, 5, 8, …
fib1 = 0; fib2 = 1
print (fib1); print (fib2)
i = 0; n = 7
while i < n:
fib_sum = fib1 + fib2 print (fib_sum)
fib1
fib2
=
=
fib2
fib_sum
i
+=
1
Нәтижесі:
0
1
1
2
3
5
8
13
21
while циклі
b = {}".format(a, b))
4- мысал:
a = 10; b = 1
while a < 15: b = b * 2
print("a = {} a += 1
a
Нәтижесі:
= 10 b = 2
a
=
11
b
=
4
a
=
12
b
=
8
a
=
13
b
=
16
a
=
14
b
=
32
Практикалық жұмыс
Фибоначчи сандарын шығаратын программа жазып, оны сандар тізбегінің бесінші мен жиырмасыншы нөмірлері арасындағыларын экранға шығаратын етіп өзгертіңіз.
0 мен 20 арасындағы жұп сандар тізбегін экранға шығаратын цикл жазыңыз. Сонан кейін -1 мен -21 арасындағы үшке бөлінетін сандар тізбегін шағаратын цикл құрыңыз.
Программаға екі бүтін сан (a,b) солардың арасындағы 5-ке бөлі- нетін, бірақ 3-ке бөлінбейтін сандар тізбегін экранға шығарыңыз.
for және while циклдерін пайдаланатын үш циклдік программа құрыңыз.
Глобальдік айнымалылар
Глобальдік айнымалылар - функциялар, кластар ішіндегі опера- цияларда қолдануға болатын айнымалылар. Бұлар C# және Java тіліндегі осындай айнымалылар аналогы болып табылады
global a a = []
for i in ["red", "green", "blue", "black", "orange", "yellow", "white"]: a.append(i)
while True: # infinite loop # True: шексіз цикл
user_input = input(" Сәлем деп жаз, оны істемесең қайталай беремін! \t") print("Сөз енгіз: ", user_input)
if user_input.lower() != "сәлем": continue
else:
print("Жақсы ұл/қыз екенсің! Сәлем деп жазарыңды білгенмін!")
break
Try – Except нұсқаулары
Аластамалар (exception) қате кеткені жайлы мәлімет береді. Программадағы try нұсқауы аластамаларды көрсетеді немесе операторлар тобын өшіреді. Except нұсқауы бір немесе бірнеше аластамаларды өңдеу ісін атқарады.
Егер try нұсқауында аластама болмаса, онда аластаманы өңдеу де жүзеге асырылмайды. Ал егер try нұсқауында аластама көрсетілетін болса, онда аластама өңдеуішін іздеу іске қосылады.
a = input("Бірдеңе енгізіңіз: ")
try:
a = int(a)
except ValueError: # ValueError – аластама аты
print("Бүтін санға түрлендірілмейтін мән енгізілді!")
Негізінде сіз қатені кез келген сәтте кез келген орыннан алып тексере аласыз
https://docs.python.org/3/tutorial/errors.html
Циклдердегі Else нұсқауы (бұл әзіл емес)
Цикл нұсқауларында да else операторын қолдануға болады.
a=10
while a is not 0: print("a is %i" % a) a -=1
else:
print("a has become %d :(" % a)
for n in range(2, 10):
for x in range(2, n): if n % x == 0:
print(n, 'equals', x, '*', n//x)
break
else:
# loop fell through without finding a factor
print(n, 'is a prime number')