Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Фукцияларды құру және қолдану. Функцияның аргументтеріне сипаттама беріңіз.
Функциялар бағ дарлама қ ұ рылымын оң айлату ү шін қ ажет. Берілген есептерді ішкі есептерге бө ліп жә не ә рбір ішкі есептерді функцияларғ а тү рлендіреді. Ә р тү рлі аргументтерді функцияғ а беріп, оны бір рет жазып қ ойып, ә р тү рлі мақ саттарда қ айтадан бірнеше рет қ олдануғ а болады. Функцияны қ олдану ү шін, функцияның қ алай жұ мыс істейтінін білу қ ажет яғ ни функцияны қ олдану ү шін олардың интерфейсін білу керек. Си-дегі кез-келген программа - бұ л айнымалылар сипаттамасы мен функциялар жиынтығ ы.Программада кем дегенде бір функция болады жә не программадағ ы бір функцияның аты main болуы тиіс. Программаның орындалуы осы main функциясынан басталады. Main функциясының орындалуы барысында басқ а функциялар шақ ырылады Функция дегеніміз – белгілі бір операциялар тобын атқ аратын программа блогы. Функцияғ а мә ліметтер береміз де, одан белгілі бір нә тижелер аламыз. Функцияның ішкі ә рекеті программаның басқ а бө ліктеріне қ атыссыз орындалады. Функциялар арасындағ ы байланыс мә н қ айтаратын аргументтер мен сыртқ ы айнымалылар арқ ылы орнатылады. Return инструкциясы нә тижені шақ ыратын функциядан шақ ырғ ан функцияғ а қ айтару механизмін орындайды жә не return сө зінен кейін кез келген ө рнек тұ руы мү мкін. return < ө рнек>; Ө рнекті жақ шағ а да жазуғ а болады, бірақ ол міндетті емес. Си-де функцианың барлық аргументі параметрлер ретінде беріледі, яғ ни шақ ырылатын функцияғ а аргументтің ө зі емес оның аргументтерінің мә ні беріледі. Си-гі кез келген функцияның прототипі болуы тиіс, яғ ни функция аты, аргументтерінің типі жә не қ айтарылатын нә тиже типі кө рсетілген тақ ырыбы хабарланады. Прототипі программа денесінде немесе бө лек тақ ырыптар файлында айқ ындалады. Функция прототипі компиляторғ а функция туралы информация береді де, сә йкесінше компилятор типтер сай келуін тексереді. Функция ә ртү рлі типті мә н қ айтара алады, int, void, float т.б. Айнымалылар жергілікті жә не сыртқ ы болуы мү мкін. Жергілікті айнымалылар функция ішінде сипатталады да сонда ғ ана " кө рінеді”. Функция ішінде орналасқ ан айнымалылар типтері сипатталуы осы функцияның ішінде ғ ана анық талғ ан болып саналады, (мұ нда тек қ ана main функциясы ерекше жағ дайда болып саналады). Программа мә тінінде функциялар кез келген ретпен орналасуы мү мкін. Функцияны шақ ыру ү шін функцияның аты жә не жақ шада нақ ты аргументтері кө рсетіледі. Функция ө з жұ мысын аяқ тағ аннан кейін есептелген нә тижені return операторы арқ ылы қ айтарады Сыртқ ы айнымалылар кез келген функция сыртында сипатталады да, сол функцияның кез келген жерінде қ олданылады. Кез келген функцияны анық тау ү шін форматы: < тип нә тиже> < функция аты> (параметр тізімі) { < функция денесі> }
Аргументтерінің айнымалы-мә н ретінде берілу тә сілі: Аргументтер мә н ретінде берілгенде функцияның ішінде аргумент аттас жергілікті айнымалы қ ұ рылады да оның мә ні функцияда ө згеруі мү мкін, бірақ аргументтің мә ні ө згермейді. Айнымалы-сілтеме арқ ылы берілу тә сілі: Аргументтегі айнымалы сілтеме арқ ылы берілгенде функция аргументтің мә нін емес, оның адресін алады. Ал мұ нда қ ұ рылғ ан жергілікті айнымалы кө рсеткіш болады. Бұ л, жадыны ү немдеуге мү мкіндік береді жә не функцияның орындалу барысында айнымалы аргумент мә ні ө згереді. Бұ л жағ дайда функция аргумент айнымалы сілтеме арқ ылы бірнеше мә н қ айтара алады. Ә ртү рлі типті аргументті функцияларды қ арастырайық: Функция аргументтері Char, int, float, double, массив типті бола алады. Mысалы: # include< iostream.h> int sum1(int i, int b, int d) { int result; result = i+b+d; return result; } main () { int sum1(int i, int b, int d); int p, d1, l; int a, b, c; cin> > p> > d1> > l; cout< < " \n summa p, d1, l=" < < sum1(p, d1, l)< < endl; cin> > a> > b> > c; cout< < " \n summa a, b, c=" < < sum1(a, b, c)< < endl; return (0); }
3)Деректер қ орының синхронизациялану процессін мысал негізінде сипаттаң ыз.
Билет
|