Құрылымдық_бағдарламалау
Көлемі жағынан орташа бағдарламаларды құруда құрылымдық бағдарламалау қолданылады. Оның негізгі идеясы, оны шешу алгоритмы ағымдағы мәтінге анық көрінуі үшін шешілетін тапсырманың құрылымын бағдарлама құрылымы көрсетуі тиіс. Ол үшін жай үш оператордың көмегімен құрылатын бағдарлама құралдары ғана емес, сонымен қатар алгоритмнің құрылымын нақты бейнелейтін құралдар қажет. Осы мақсатпен бағдарламалауда ішкі бағдарлама ұғымы еңгізілген. Ішкі бағдарлама қажетті әрекетті орындаушы және ағымдағы кодтың басқа бөліктеріне тәуелді емес операторлар жиынтығы. Бағдарлама бірнеше кішкене ішкі бағдарламаларға бөлінеді, олардың әрқайсысы ағымдағы тапсырмамен қарастырылған әрекеттердің бірін орындайды. Құрылымдық бағдарламалау идеясы 70 жылдары IBM компаниясында пайда болды, оны әзірлеуде атақты ғалымдар Э. Дейкстра, Х. Милс, Э. Кнут, С. Хоор қатысты. Құрылымдық бағдарламалау бағдарламалық өнімнің модульдық құрылымына және әртүрлі бағдарламалық модульдердің мәліметтерін өңдеу алгоритмдерінің типтік басқару құрылымдарына негізделген. Құрылымды басқару типтері: Құрылымдық бағдарламалауға жататын бағдарлама әзірлеудің екі әдістемесі кең таралған: «Жоғарыдан төменге» бағдарламалау бағдарламаны әзірлеудің бұл әдістемесінде әзірлеу мәселені шешу мақсатын анықтаудан басталып, одан кейін нақты бағдарламамен аяқталады. Ең алдымен ең ауқымды тапсырмаларды шешетін бірнеше ішкі бағдарламалар ерекшеленеді, одан кейін осы модульдердің әрқайсысы өз кезегінде басқа бірнеше басқа ішкі бағдарламаларға бөлініп барлық тапсырма жүзеге асқанша дейін жалғаса береді. Бұл жағдайда бағдарлама жоғарыдан төменге қарай құрастырылады, басты бағдарламадан ең төменгі ішкі бағдарламаларға дейін, сондай ақ әрбір деңгейде тек қарапайым инструкциялар, циклдар және шартты тармақталулар қолданылады. «Төменнен жоғарыға» бағдарламалау, бұл жалпы сызбаның жұмысы аяқталмай жатып, ішкі бағдарламаларды (процедуралар, функциялар) әзірлеуден бастайтын бағдарлама әзірлеудің әдістемесі. Бұл әдістеме алдыңғы әдістемеге қарағанда тиімсіз болып саналады, өйткені жиі қолайсыз нәтижелерге, қайта жөндеулерге және әзірлеудің уақытын созуға әкеліп соғады. Ішкі бағдаламалардың ең маңызды мінездемесі оларды қайта қолдану мүмкіндігі. Ішкі бағдаламалардың екі түрі бар процедуралар және функциялар. Олардың айырмашылығы, процедура операторлар тобын жай орындайды, ал функция сонымен бірге қандай да бір мәнді есептейді және оны басты бағдарламаға қайтадан жібереді (мәнді қайтарады). Ол мәннің арнайы типі болады. Ішкі бағдарламаның жұмысы мағыналы болу үшін, оған сыртқы бағдарламалардан мәліметтер алу керек. Мәліметтер ішкі бағдарламада параметрлер немесе аргументтер түрінде жіберіледі, олар әдетте айнымалылар сияқты оның бастапқы бөлігінде сипатталады. Ішкі бағдарламалар қажетті параметрлермен олардың жай атауын  жазу арқылы шақырылады. Ішкі бағдарламалар оларды шақыру кезінде ғана белсенді болады. Ішкі бағдарламаның ішіндегі операторлар, егер олар нақты шақырылса ғана орындалады. Кейбір бағдарламалау тілдерінде ішкі бағдарламаларды өзінің ішінен шақыртуға болады. Мұндай тәсіл рекурсия деп аталады. Ол бағдарламаның бір орында тұрып қалуына әкелуі мүмкін. Құрылымдық бағдарламалаудың артықшылықтары: