131
Блиц-тест
1. Жолдармен жұмыс жасау функциялары анықталған кітапхананы көрсетіңіз
a) conio.h
b) string.h
c) math.h
d) stdio.h
e) ctype.h
2. Қандай функция жолдың ұзындығын соңғы нөлдік байтсыз қайтарады?
a) strlen
b) strlwr
c) strcmp
d) strcpy
e) strset
3. Қандай формат командасы жолды экранға шығаруды анықтайды?
a) %c
b) %i
c) %d
d) %s
e) %f
Бақылау сұрақтары:
1.Оперативті жадыда символдық мәліметтерді бейнелеу тәсілдері.
2.Оперативті жадыда жолдық тұрақтыларды бейнелеу тәсілдері.
3. Оперативті жадыда жолдық айнымалыларды бейнелеу тәсілдері.
4. Си тілінде жолдарды сипаттау тәсілдері.
5. Си тіліндегі символдармен жұмыс жасауға арналған функциялар.
Глоссарий
Егер программада жолдық мәліметтерді өңдеу қажет болса, онда оны
символдар массив ретінде қарастыру қажет. Мұндай массивте жолдың әр элементі
үшін жеке ұяшықтар бөлінеді және ең соңғы элементі ретінде жолдың соңы
таңбасы (\о) қойылуы тиіс.
Символдық
массивті
енгізу
және
инициализациялау
мысалдарына
программа келтірейік:
#include
main ()
{
char pan[12], razm[5];
static char opr[11]=”информация”;
razm[0]=’б’;
razm[1]=’а’;
razm[2]=’й’;
razm[3]=’т’;
132
razm[4]=\o’;
printf(“\n информатика сөзін енгізіңіз:“);
scanf(“%s”, pan);
printf(“\n %s \n”, pan);
printf(“\n %s \n”, razm);
printf(“\n %s \n”, opr);
}
Көріп отырғанымыздай символық массивке енгізілетін жолдық мәннің
ұзындықтары бірге арттырылып алынып отыр. Ол орын жолдың соңы таңбасына
арналады. Инициализациялау барысында ол таңб арнайы қойылады.
Әдебиеттер
1. Керниган Б., Ритчи Д.,- Язык программирования Си. – М.: Финансы и
статистика, 1985 г.
2. Вирт Н. Алгоритмы и структуры данных: Пер. с анг.- М.: Мир, 1989 г.
3. Д.Кнут Искусство программирования для ЭВМ. Основные алгоритмы. М.:
Мир, 1976. 3.
4. Н.Культин., С/С++ в задачах и примерах – БХБ-Петербург, 2002 г.
5. Крис Паппас., Программирование на С и С++ - BHV, Киев, 2000 г.
6. Т. А. Павловская, А. Ю. Щупак С/С++ Структурное программирование:
Практикум- СПб.: Питер, 2005
7. Уэйт М . Язык Си. Руководство для начинающих: Пер. с англ. – М., Мир,
1988 г.
Практикалық жұмыс №6.
Тақырыбы: Ішкі программалар. Функциялар.
Сабақ мақсаты: Ішкі программаларды ұйымдастыру принциптері мен
қажеттілігін түсіндіру. С/С++ тіліндегі функцияларды қолдану дағдысы
қалыптастыру. Рекурсивті алгоритмдерді құру машығын қалыптастыру.
Қажетті материалдар мен жабдықтар: практикалық сабақтарды орындауға
арналған нұсқаулар, тақта.
133
Жұмыстың мазмұны және орындалу реті:
1. Тапсырмаларды орындау мысалдарын қарастыру.
2. Ретімен берілген тапсырмаларды орындау.
3. Практикалық жұмысты талапқа сай орындап тапсыру.
Тапсырманы орныдау мысалдары
“Факториалды”есептеу функциясын құру факториалдар кестесін экранға шығару
үшін осы функцияны қолдану программасын жазу.
Факториалды есептеу формуласы :
n
n
*
*
3
*
2
*
1
!
.
#include
#include
unsigned int factor(int x)
{ unsigned int f=1;for (int i=2; i=x; i++) f*=i; return(f);
}
void main()
{
unsigned int f;
clrscr();
puts(" \n Факториалдар кестесі");
for (int n=1; n=8; n++)
{
f=factor(n);
printf("%2i %u\n", n, f);
}
getch();
}
Практикалық жұмыстың есебін дайындау формасы:
Берілген тапсырманың әрқайсысы үшін төмендегілерді орындау:
4.
Есептің математикалық моделін анықтау;
5.
Есептің алгоритмінің блок-схемае сызу;
6.
Есептің алгоритміне сәйкес программасын жазу.
Блиц-тест
1. Функциия жұмысын аяқтау функциясы?
a) return
b) exit
c) go to
d) continue
e) break.
134
Бақылау сұрақтары:
1. Ішкі программа дегеніміз не?
2. Функция аргументі қандай типті бола алады?
3. Функция қандай типті мәндер қайтара алады?
4. Рекурсияның қандай түрлері бар?
5. Функцияның жергілікті аргументі қайда сипатталады?
Глоссарий
Си-дегі кез-келген программа - бұл айнымалылар сипаттамасы мен
функциялар жиынтығы.
Функциялар арсындағы байланыс мән қайтаратын аргументтер мен сыртқы
айнымалылар арқылы орнатылады.
Return инструкциясы нәтижені шақыратын функциядан шақырған
функцияға қайтару механизмін орындайды және return сөзінен кейін кез келген
өрнек тұруы мүмкін.
Return <өрнек>;
Си-гі кез келген функцияның прототипі болуы тиіс, яғни функция аты,
аргументтерінің типі және қайтарылатын нәтиже типі көрсетілген тақырыбы
хабарланады. Прототипі программа денесінде немесе бөлек тақырыптар файлында
айқындалады. Функция прототипі компиляторға функция туралы информация
береді де, сәйкесінше компилятор типтер сай келуін тексереді. Функция әртүрлі
типті мән қайтара алады.
Кез келген функцияны анықтау үшін форматы:
<тип нәтиже> <функция аты> (параметр тізімі)
{
<функция денесі>
Кез келген функцияның формалды аргументтер тізімі болады (болмауы да
мумкін).
Программадан функция шақырғанда аргумент тізімі беріледі.
С++-те аргументтерді беру барысында көрсеткіш орнына тікелей сілтеме
беруге болады. Сілтеме де аргументке сілтейді, бірақ көрсеткішті айқындау
операторын қолдануды қажет етпейді.
Аргументтерінің айнымалы-мән ретінде берілу тәсілі:
Аргументтер мән ретінде берілгенде функцияның ішінде аргумент аттас
жергілікті айнымалы құрылады да оның мәні функцияда өзгеруі мүмкін, бірақ
аргументтің мәні өзгермейді.
Айнымалы-сілтеме арқылы берілу тәсілі:
Аргументтегі айнымалы сілтеме арқылы берілгенде функция аргументтің
мәнін емес, оның адресін алады. Ал мұнда құрылған жергілікті айнымалы
көрсеткіш болады. Бұл, жадыны үнемдеуге мүмкіндік береді және функцияның
Достарыңызбен бөлісу: |