Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»



Pdf көрінісі
бет136/642
Дата30.03.2022
өлшемі3,66 Mb.
#29231
түріПрограмма
1   ...   132   133   134   135   136   137   138   139   ...   642
Байланысты:
pavlovskaia-jogargy-dengeili

va_start, va_arg

  жəне 

va_ end

 кітапхана макростары қолданылады. Бұл макростар 5-ші қосымшада 

сипатталған.

Компиляторда типтерді бақылауға қажетті ақпарат жоқ болғандықтан, 

параметрлерінің саны айнымалы функциялардың орнына келісім бойынша 

берілген параметрлерді немесе асыра жүктелген функцияларды («Функ-

цияларды асыра жүктеу», 86 б.) пайдаланған жөн, бірақ саны айнымалы 

параметрлерді қолдану жақсы нəтиже беретін жағдайларды да көрсетуге 

болады.



85

Рекурсивті функциялар

Өзін өзі шақыратын функция рекурсивті деп аталады. Мұндай ре-

курсияны тура деп атайды. Екі немесе одан артық функциялар бір-бірін 

шақырған кезде туындайтын рекурсияны жанама рекурсия деп атаймыз. 

Егер функция өзін шақырса, қарапайым функцияны шақырған кездегі 

сияқты, стекте осы функция параметрлері мəндерінің көшірмесі жасала-

ды, содан кейін басқару функцияның алғашқы атқарылушы операторына 

беріледі. Қайталап шақыру жағдайында бұл процесс қайталанады. Есеп-

теулер аяқталуы үшін əрбір рекурсивті функцияда қайтару операторымен 

аяқталатын кем дегенде бір  рекурсивті емес алгоритм тармағы болу керек. 

Функция аяқталған кезде стектің сəйкес бөлігі босатылады жəне басқару 

рекурсивті шақырудан кейінгі нүктеден атқарылуы жалғасатын  шақырушы 

функцияға беріледі.

Рекурсивті функцияның классикалық мысалы ретінде факториалды 

есептеуді (бұл факториалды дəл осылай есептеу керек екендігін білдірмейді) 

қарастыруға болады. Мұнда 





Достарыңызбен бөлісу:
1   ...   132   133   134   135   136   137   138   139   ...   642




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

    Басты бет