№1 Лабораториялыќ жўмыс


Қысқаша теориялық мәлімет



жүктеу 0,61 Mb.
бет28/48
Дата06.01.2022
өлшемі0,61 Mb.
#36819
түріПрограмма
1   ...   24   25   26   27   28   29   30   31   ...   48
«Алгоритмдер ж не программалау» п нінен зертханалы саба тарын

Қысқаша теориялық мәлімет
Уақыттық циклда сынақ шарты шындық болған кезде орындалатын әрекеттердің бірізділігін береді. Шарт конструкцияның корпусына жазылады және циклдің корпусының орындалуына дейін тексеріледі. Әдетте, цикл уақыт циклінің орындалу санын нақты мәнін анықтау мүмкін болмаған кезде қолданылады.

Уақытша циклдың қарапайым жағдайда синтаксисі:

ал жағдай:

нұсқаулық блок

Алғашқы цикл іске қосылғанда, алдымен шарт тексеріледі. Егер бұл жалған болса, онда цикл тоқтайды және басқару элементі келесі уақыт циклінің денесінің кейінгі нұсқасына ауысады. Егер шарты дұрыс болса, нұсқаулық орындалады, одан кейін шарт қайтадан тексеріледі, нұсқаулық орындалады. Бұл шарт шын болғанша жалғасады. Шарт жалған болып шыққаннан кейін, циклдің жұмысы аяқталып, циклнан кейін бақылау келесі нұсқаулыққа ауыстырылады.

Мысал 1. 1-ден 10-ға дейінгі бүтін сандардың квадраттарын көрсету.

i = 1

while i <= 10:



print(i ** 2)

i=i + 1


Бұл мысалда цикл ішіндегі i айнымалыны 1-ден 10-ға дейін өзгереді. Циклдің әрбір жаңа өтуі өзгеретін мәні осы контролер деп аталады. Айта кету керек, бұл фрагментті орындағаннан кейін i айнымалы мәні 11 болады, себебі i == 11 үшін i <= 10 шарты бірінші рет орындалуын тоқтатады.

2-мысал. N санының табиғи санының санын анықтаңыз:n = int(input())

kol = 0

while n > 0:

n =n// 10 # это эквивалентно n = n // 10

kol=ko l + 1

print(kol)

Бұл циклде біз бүтін бөлікке 10 (n = n // 10) тең деп саналатын, соңынан бастап санның бір санын алып тастаймыз, ал біз айнымалы борға қанша рет жасалды деп болжап отырмыз.

2. Циклді басқару нұсқаулары

Циклдың корпусынан кейін басқа сөзді жаза аласыз: кейіннен цикл аяқталғаннан кейін бір рет орындалатын операциялар блогы, сынақ жағдайы дұрыс болмаған кезде:

i = 1

while i <= 10:



print(i)

i += 1


else:

print('Цикл окончен, i =', i)

Бұл жерде ешқандай ұғым жоқ сияқты көрінеді, өйткені циклдің аяқталғаннан кейін ғана сол нұсқаулықты жазуға болады. Мән тек үзіліс үзіндісімен бірге пайда болады. Егер іске қосу уақытында, Python цикл ішінде үзіліс үзіндісін тапса, ол циклды бірден тоқтатады және оны шығарады. Бұл жағдайда басқа филиал орындалмайды. Әрине, үзіліс туралы мәлімдеме тек if операторында ғана айтылуы мүмкін, яғни, егер ол арнайы шарт орындалса ғана орындалуы керек.

3-мысал сандарды теріс санды тапқанша оқиды. Теріс сан пайда болған кезде бағдарлама тоқтайды. Бірінші нұсқада сандар тізбегі 0 санымен тоқтатылады (оны оқығанда тоқтату керек).a = int(input())

while a != 0:

if a < 0:

print('Встретилось отрицательное число', a)

break


a = int(input())

else:


print('Ни одного отрицательного числа не встретилось')

Бағдарламаның екінші нұсқасында бірізділіктегі элементтер саны алдымен кіріске енгізіледі, содан кейін элементтердің өзі. Бұл жағдайда циклды қолдану ыңғайлы. For циклында сондай-ақ, басқа тармақ болуы мүмкін және үзіліс туралы мәлімдемелер болуы мүмкін.

n = int(input())

for i in range(n):

a = int(input())

if a < 0:

print('Встретилось отрицательное число', a)

break


else:

print('Ни одного отрицательного числа не встретилось')

Басқа циклді басқару бойынша нұсқаулық жалғасады. Егер бұл нұсқаулық циклдің ортасында орын алса, қалған нұсқаулар циклдің соңына өткізіп жіберіледі және цикл орындалуы келесі итерацияда жалғасады.

Үзіліс және жалғастыру туралы мәлімдемелер бірнеше кірістірілген циклдарда болса, олар тек ішкі циклдің орындалуына әсер етеді. Бұл көрсететін ең ақылдылықтың үлгісі емес:

for i in range(3):

for j in range(5):

if j > i:

break


print(i, j)

Үзілістерге деген ұмтылыс және жалғастыру нұсқаулары оларды қолданбай-ақ жасалса, ынталандырылмайды. Міне, үзіліс операторының нашар қолдануының үлгі мысалы (бұл код сандағы таңбалардың санын есептейді).

n = int(input())

length = 0

while True:

length += 1

n //= 10

if n == 0:

break

print('Длина числа равна', length)



Гораздо лучше переписать этот цикл так:

n = int(input())

length = 0

while n != 0:

length += 1

n //= 10


print('Длина числа равна', length)

Дегенмен, Python-да сізге неғұрлым талғампаз шешім ұсынуға болады:

n = int (енгізу ())

print ('Нөмірдің ұзындығы', len (str (n)))

3. Бірнеше тағайындау

Python бағдарламасында бір тапсырма мәлімдемесі үшін бірнеше айнымалы мәнді бірден өзгертуге болады. Бұл келесідей:

a, b = 0, 1

Бұл кодты да жазуға болады:

a = 0

b = 1


Екі әдіс арасындағы айырмашылық, бірінші әдіске бірнеше тапсырма бір мезгілде екі айнымалы мәнін өзгертеді.

Егер бірнеше тағайындағанда «=» белгісінің сол жағында үтірмен бөлінген айнымалы атаулар болуы керек болса, оң жақта үтірлермен бөлінген ерікті өрнектер болуы мүмкін. Ең бастысы, тапсырма белгісінің сол және оң жағында бірдей элементтер бар.




жүктеу 0,61 Mb.

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




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

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау