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


ПРОЦЕДУРАЛАР МЕН ФУНКЦИЯЛАР



жүктеу 0,61 Mb.
бет39/48
Дата06.01.2022
өлшемі0,61 Mb.
#36819
түріПрограмма
1   ...   35   36   37   38   39   40   41   42   ...   48
«Алгоритмдер ж не программалау» п нінен зертханалы саба тарын

ПРОЦЕДУРАЛАР МЕН ФУНКЦИЯЛАР

(4 сағат)
Тақырып 6.1: Python бағдарламалау тілі. Таңдамалы функциялар
Жұмыстың мақсаты: Бағдарламалық кодтың бөлімдерін функциялар түрінде жобалау және оларды негізгі бағдарламада қалай пайдалану керектігін үйрену.
Қысқаша теориялық мәлімет
Функциялар - бағдарламаның қалған бөлігінен оқшауланған және олар шақырылған кезде ғана орындалатын бағдарлама коды. Біз sqrt (), len () және print () функцияларына кездестік. Олардың барлығы ортақ меншікке ие: олар параметрлерді (нөл, бір немесе бірнеше) қабылдай алады және олар қайтара алады (бірақ олар қайтарылмауы мүмкін). Мысалы, sqrt () функциясы бір параметрді қабылдап, мәнді (санның түбірін) қайтарады. Print () функциясы параметрлердің айнымалы санын алады және ештеңені қайтармайды.

1-мысал. Санның бір параметрін қабылдайтын new function factorial () функциясын жасауды қарастырыңыз және мәнді қайтарады - бұл санның факторы.

Естеріңізге сала кетейік, математикада n санының факториалы n ретінде анықталады! = 1 ⋅ 2 ⋅ ... ⋅ n.

Мысалы, 5! = 1 ⋅ 2 ⋅ 3 ⋅ 4 ⋅ 5 = 120. Әрине, факторикалы цикл үшін оңай есептелуі мүмкін. Біздің бағдарламамызда (немесе кодының әртүрлі бөліктерінде) әртүрлі сандар факториясын бірнеше рет есептеу керек екенін елестетіп көрейік. Әрине, фореклиалды есептеулерді бір рет жаза аласыз, содан кейін Copy-Paste функциясын оны қажет жерде қою үшін пайдаланыңыз.

# вычислим 3!

res = 1


for i in range(1, 4):

res *= i


print(res)

# вычислим 5!

res = 1

for i in range(1, 6):

res *= i

print(res)

Алайда, бастапқы кодта бір рет қате жасасақ, онда бұл қате фореклиалды есептеуді көшірген барлық жерлерде кодқа түседі. Және, жалпы алғанда, коды мүмкін болатын қарағанда көбірек орын алады. Бірдей логиканы қайталамау үшін бағдарламалау тілдерінде функциялар бар.

def factorial(n):

res = 1

for i in range(1, n + 1):

res *= i

return res

print(factorial(3))

print(factorial(5))

Функцияларды жасау кезінде сіз бірнеше ережелерді сақтауыңыз керек:

1) Функционалды код бағдарламаның басында, немесе дәлірек, factorial () функциясын пайдаланғымыз келетін нүктеге орналастырылуы керек.

2) Бірінші жол біздің функциямыздың сипаттамасы. factorial - бұл идентификатор, яғни біздің функцияның атауы. Идентификатордан кейін, функция қабылдайтын параметрлердің тізімі жақшада болады. Тізім үтірмен бөлінген параметр идентификаторларынан тұрады. Біздің жағдайда, тізім n бір саннан тұрады. Жолдың соңында қос нүкте орналастырылған.

3) Бұдан былай блок түрінде жасалған, яғни шегініспен, функцияның денесі пайда болады. Функцияның ішіндегі n мәнінің факторы есептеледі және ол айнымалы res сақталады. Функция функцияны тоқтатып, айнымалы res мәнін қайтаратын қайтару нұсқауы арқылы тоқтатылады.

4) Функция кез келген жерде пайда болуы мүмкін, оны орындау функцияны тоқтатады және көрсетілген мәнді қоңырау орнына қайтарады. Қайтар- мағыналар Атқаратын қызметім мағынаны қайтармаса, қайтар- мағынаның қайтар- мағына болмайды. Мәндерді қайтарудың қажеті жоқ функцияларда қайтару мәлімдемесі болмауы мүмкін.
МЫСАЛ 2. Максимум () функциясын жазыңыз, ол екі нөмірді алып, олардың барлығын қайтарады (іс жүзінде мұндай функция Python-ға кіріктірілген, бірақ біз өзіміз жазатын боламыз).

def max(a, b):

if a > b:

return a


else:

return b


print(max(3, 5))

print(max(5, 3))

print(max(int(input()), int(input())))
Мысал 3. Макс3 () функциясын жазыңыз, ол үш нөмірді алып, олардың барлығын қайтарады.

def max(a, b):

if a > b:

return a


else:

return b


def max3(a, b, c):

return max(max(a, b), c)

print(max3(3, 5, 4))
Мысал 4. Python ішіндегі кірістірілген max () функциясы аргументтердің айнымалы санын қабылдап, олардың барлығын қайтара алады. Міне, осындай функцияның қалай жазылуы мүмкін екендігі туралы мысал.

def max(*a):

res = a[0]

for val in a[1:]:

if val > res:

res = val

return res

print(max(3, 5, 4))

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


жүктеу 0,61 Mb.

Достарыңызбен бөлісу:
1   ...   35   36   37   38   39   40   41   42   ...   48




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

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