Зертханалық жұмыс



жүктеу 1,28 Mb.
бет16/38
Дата23.01.2020
өлшемі1,28 Mb.
#27192
1   ...   12   13   14   15   16   17   18   19   ...   38

5 Тапсырма

Толық оң сандар факториалын есептептеудің рекурсивті тәртібін жазыңыз (яғни белгіленетін сандарын шығару).

Шешім. Теңсіздікті қолданамыз .
procedure factorial (n: integer; var fact: integer);

| { n факториал санына тең fact қойыңыз}

begin

| if n=1 then begin



| | fact:=1;

| end else begin {n>1}

| | factorial (n-1, fact);

| | {fact = (n-1)!}

| | fact:= fact*n;

| end;


end;

Процедура-функцияларды падаланып төмендегідей жазамыз:


function factorial (n: integer): integer;

begin


| if n=1 then begin

| | factorial:=1;

| end else begin {n>1}

| | factorial:= factorial (n-1)*n;



| end;

end;
Функцияның ішкі сипатында factorial атынын екі жақтылықта пайдалануына ерекше көңіл бөліңіз ол айнымалы және шақырылатын рекурсивті функцияларды белгілейді.Біздің жағдайда олар атынан кейін жақшамен айрылып тұр, ал егер функция параметірсіз болса, қиын болатын еді. (Стандарттық, бірақ қиын табылатын қателер болып тұрады, егер бағдарлама авторы айнымалы мағынасын пайдаланатын болса, онда компиляторды бұл жерде рекурсивті шақырылым ретінде көреді).



6 Тапсырма

Әдетте факториалды екі нөлді анықтау үшін қолданылады, деп есептейді. Бағдарламаны сәйкесінше ауыстырыңыз.
7 Тапсырма

Бағдарламаның рекурсивті көтерілуін толық кері деңгейде жазыңыз.



8 Тапсырма

Қажет болған жағдайда рекурсия терендігі аспаған жағдайда, онда – деңгей көрсеткіші.
9 Тапсырма

"Ханой мұңаралары" ойыны келесі кезеннен тұрады. Үш өзек бар. Оларды біріншісіне сақинасынан тұратын пирамида киілген.(үлкен сақиналары астынан, кішілері үстінен). Сақиналарды басқа өзекке ауыстыру керек. Сақиналарды өзектен өзекке ауыстырып отыруға болады, бірақ кіші сақинаның үстіне үлкендерін қоюға болмайды. Әрекетті қажет ететін бағдарламаны құрастырыңыз.

Төменгі төбе түбір деп аталады.Әр төбеден екі сызық таралуы мүмкін: солға жоғары және оңға жоғары. Төбелер сызықтарынын баратын жерін төбелердің бастапқы сол және оң жақ ұлдары деп атайды. Төбенің екі ұлы болуы мүмкін, кей кезде бір ұлы болады (сол және оң жақ). Оның ұлдары болмауы да мүмкін, бұл жағдайда оны парақ деп атайды.



- екілік бұтақтын төбесі болсын. Ол өзі ұлдары, немерелері және шөберелерімен түбірінде бұтағы бар - " бұтақтар ұрпақтарын" құрайды.

Келесі есептерде бұтақ төбелері толық оң сандармен нөмірленген.



Барлық төбелер нөмірлері әр түрлі болып келеді. Біздің ойымызша түбір нөмірі root ауысымында сақталған. Екі жиым бар:
of integer.

Төбенің сол және оң жақ ұлдарының нөмірімен и нөміріне сәйкес болып келеді. Егер төбе нөмірінің сол және оң жақ ұлдары болмаса, онда (сәйкесінше ) 0 тең. (Дәстүр бойынша бағдарламаларды жазғанда нөлдің орнына нөлге тең nil тұрақтылығы қолданылады).

Бұл жерде – жеткілікті түрде натурал сан болып келеді (төбелердің барлық сандары аспайды). Белгілейік, 1 ден дейінгі барлық сандар төбелер нөмірі болу міндетті емес және төбелер нөмірінің орналасуымен байланысты болмайды. (яғни l және r жиынтығындағы мәліметтер бөлігі- бұл қоқыс).
жүктеу 1,28 Mb.

Достарыңызбен бөлісу:
1   ...   12   13   14   15   16   17   18   19   ...   38




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

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