Си тілінде программа құру



I. Кіріспе 3
II. Негізгі бөлім:
1. Есептің қойылымы 5
2. Есептің алгоритмін жасау 6
3.Пайдаланылатын әдістер 7
3.1 Құрылым типінің сипатталуы 7
3.2 Мәліметтер құрылымы 9
3.3 Функция 10
4. Алгоритм 13
5.Программаның сипатталуы 14
6. Басты программаның сипатталуы: 18
7. Программаның баяндалуы 19

ІІІ. Қорытынды 20

Пайдаланылған әдебиеттер 21
Жазылған программа курстық жұмыс болып табылады. Бұның орындалуы “Жоғары деңгейлі тілдерінде программалау” пәнінің соңғы қадамы болып есептеледі. Студент өз мүмкіндіктерін қорыта келе бір бағытта түпкілікті жұмыс істей алады. Курстық жұмыс жасау уақытысында студент іс жүзінде есепті шығара отырып, тәжірибе жинауы тиіс. Ол өзінің үйренгенін қорыта отырып, программалауға арналған оқулықтарды дұрыс пайдалануын, есеп шығару кезінде жаңа және тиімді тәсілдерді ойлап табуын, алгоритмді дұрыс құруын, Си тілінің көптеген операторларын үйренуі қажет.
Курстық жұмыстың басты мақсаты: студенттің практикада санау жүйесімен танысып, ойындар, күрделі есептер орындауда тәжрибе жинақтауына негізделген. Алдыға қойған мақсат студенттің өзіндік жұмысы арқылы және Си тілінде алгоритмді дұрыс құру, операторларды орынды пайдалану арқылы жүзеге асады.
Бұл курстық жұмысты “Жоғары деңгейлі тілдерінде программалау” пәнінен үйренгенімді көрсету мақсатымен ойлап шығардым.
Қазіргі уақытта ғылыми техникалық дамуының жетістіктеріне сай, алдыңғы қатарлы ЭЕМ өміріміздің әр түрлі саласында кеңінен қолданылуда. Осыған орай ЭЕМ-да жұмыс істеу реттерін программа арқылы басқара алатын систематехника инженеріне сұраныс көп.
ЭЕМ-сымен арақатынас қалыптастыруда керекті алгоритмдік тілдер: Фортран, Паскаль, Бейсик, Си, және т.б. компьютерде есептерді белгілеп, нәтижесін шығаруға бейімделген.
Соның ішіндегі программалау технологиясы мен алгоритмдік тілдерді оқытып үйретуге ыңғайлысы Си тілі туралы қысқаша айта кетелік.
Си тілі әйгілі профессионалдық программалау тілдерінің арасынан әлі өз позициясын жоғалтқан жоқ. Бұл тіл басқа программалау тілдері мүмкіншіліктерінің бәрін бойына сіңіре отырып, сонымен қатар ол программистке басқа да көптеген мүмкініліктерді береді, жады ұяшығына және компьютер регистрлеріне қатынас құруға мүмкіндік береді. Ол үшін компьютер ерекшеліктерін бөлуді қажет етеді.
Алгоритмдік немесе программалау тілі жазу ережелері қарапайым жасамды тіл. Сондықтан, алгоритмдік тілде программа жасау әрі жеңіл, әрі ыңғайлы болып келеді.
Әрбір ЭЕМ алдын ала берілген алгоритммен, яғни жоспармен жұмыс істейді. Алгоритмді белгілі бір заңдылық бойынша, реттелген амалдар жиыны арқылы көрсетілген, кезекпен орындалатын операциялар тізімі деп ұғынсақ дұрыс болады. Бұл ұғым қазіргі кезде кеңінен қолданылып жүр.
Берілген есепті шығару барысында бізге көптеген айнымалылар енгізу керек болады. Олардың ішінде файлдық айнымалылар, жолдық айнымалылар және т.с.с. қолданады. Есептің жауабын файлға жазу керек болған соң, ол жерде файлмен жұмыс жасайтын процедурлар мен функцияларды пайдалану керек болады. Біздің программамыз өте ауқымды болуы да мүмкін.
Мәліметтер қорымен жұмыс болған соң, программада құрылымдар мен файлдар қолданылуы қажет. Себебі, құрылымдарсыз және файлдарсыз біз өзімізге керек мәліметтер қорымен жұмыс жасай алмаймыз.
1. Уэит, Мартин Д. “Язык Си” М.:1988ж.
2. Мұртазина Ә.Ө., Сатпаева А.К. “Си тілінде программалаудың негіздері” Алматы: ҚазҰТУ, 2002ж.
3. Уиннер Р. “Язык Turbo C” М.:1991ж.
4. Культин Н. “C/C++” М:2001ж.
5. Вирт Н. Алгоритмы + структуры данных = программы: Пер. С англ.- М.: Мир, 1985. – 406б.

Тақырыбы: СИ ТІЛІНДЕ ПРОГРАММА ҚҰРУ

МАЗМҰНЫ

I. Кіріспе 3

II. Негізгі бөлім:

1. Есептің қойылымы
5

2. Есептің алгоритмін жасау 6

3.Пайдаланылатын әдістер 7
3.1 Құрылым типінің сипатталуы 7
3.2 Мәліметтер құрылымы 9
3.3 Функция 10
4. Алгоритм 13
5.Программаның сипатталуы 14
6. Басты программаның сипатталуы: 18
7. Программаның баяндалуы 19

ІІІ. Қорытынды 20

Пайдаланылған әдебиеттер 21

КІРІСПЕ

Жазылған программа курстық жұмыс болып табылады. Бұның орындалуы
“Жоғары деңгейлі тілдерінде программалау” пәнінің соңғы қадамы болып
есептеледі. Студент өз мүмкіндіктерін қорыта келе бір бағытта түпкілікті
жұмыс істей алады. Курстық жұмыс жасау уақытысында студент іс жүзінде
есепті шығара отырып, тәжірибе жинауы тиіс. Ол өзінің үйренгенін қорыта
отырып, программалауға арналған оқулықтарды дұрыс пайдалануын, есеп шығару
кезінде жаңа және тиімді тәсілдерді ойлап табуын, алгоритмді дұрыс құруын,
Си тілінің көптеген операторларын үйренуі қажет.
Курстық жұмыстың басты мақсаты: студенттің практикада санау жүйесімен
танысып, ойындар, күрделі есептер орындауда тәжрибе жинақтауына
негізделген. Алдыға қойған мақсат студенттің өзіндік жұмысы арқылы және Си
тілінде алгоритмді дұрыс құру, операторларды орынды пайдалану арқылы жүзеге
асады.
Бұл курстық жұмысты “Жоғары деңгейлі тілдерінде программалау” пәнінен
үйренгенімді көрсету мақсатымен ойлап шығардым.
Қазіргі уақытта ғылыми техникалық дамуының жетістіктеріне сай, алдыңғы
қатарлы ЭЕМ өміріміздің әр түрлі саласында кеңінен қолданылуда. Осыған орай
ЭЕМ-да жұмыс істеу реттерін программа арқылы басқара алатын систематехника
инженеріне сұраныс көп.
ЭЕМ-сымен арақатынас қалыптастыруда керекті алгоритмдік тілдер:
Фортран, Паскаль, Бейсик, Си, және т.б. компьютерде есептерді белгілеп,
нәтижесін шығаруға бейімделген.
Соның ішіндегі программалау технологиясы мен алгоритмдік тілдерді
оқытып үйретуге ыңғайлысы Си тілі туралы қысқаша айта кетелік.
Си тілі әйгілі профессионалдық программалау тілдерінің арасынан әлі өз
позициясын жоғалтқан жоқ. Бұл тіл басқа программалау тілдері
мүмкіншіліктерінің бәрін бойына сіңіре отырып, сонымен қатар ол
программистке басқа да көптеген мүмкініліктерді береді, жады ұяшығына және
компьютер регистрлеріне қатынас құруға мүмкіндік береді. Ол үшін компьютер
ерекшеліктерін бөлуді қажет етеді.
Алгоритмдік немесе программалау тілі жазу ережелері қарапайым жасамды
тіл. Сондықтан, алгоритмдік тілде программа жасау әрі жеңіл, әрі ыңғайлы
болып келеді.
Әрбір ЭЕМ алдын ала берілген алгоритммен, яғни жоспармен жұмыс
істейді. Алгоритмді белгілі бір заңдылық бойынша, реттелген амалдар жиыны
арқылы көрсетілген, кезекпен орындалатын операциялар тізімі деп ұғынсақ
дұрыс болады. Бұл ұғым қазіргі кезде кеңінен қолданылып жүр.
Берілген есепті шығару барысында бізге көптеген айнымалылар енгізу
керек болады. Олардың ішінде файлдық айнымалылар, жолдық айнымалылар және
т.с.с. қолданады. Есептің жауабын файлға жазу керек болған соң, ол жерде
файлмен жұмыс жасайтын процедурлар мен функцияларды пайдалану керек болады.
Біздің программамыз өте ауқымды болуы да мүмкін.
Мәліметтер қорымен жұмыс болған соң, программада құрылымдар мен
файлдар қолданылуы қажет. Себебі, құрылымдарсыз және файлдарсыз біз
өзімізге керек мәліметтер қорымен жұмыс жасай алмаймыз.

1. Есептің қойылымы

Кітап сүюші кітаптарды ұзындығы бірдей, бірақ әр түрлі биіктіктегі
кітап сөрелеріне қояды. Кітаптарды ол қораптан алады және кітап биіктігін,
енін, түсін мөлшерлейді.
Келесі жағдайларды есепке ала отырып кітаптарды сөрелерге орналастыру
алгоритмін сипаттайтын процедура құру керек:
➢ кітап үшін биіктігі бойынша сөре таңдалады;
➢ кітап сөреге тігінен қойылады;
➢ қатар тұрған екі кітап түсі әр түрлі болуы керек, егер бір түсті
түптеудегі кітаптар қалған жағдайда түстердің сәйкес келуі жіберіледі;
➢ кітап сөрелері кіші биіктіктегі кітаптармен толтырылганнан кейін ғана,
үлкен биіктіктегі кітаптар сөрелерге қойыла бастайды.
Құралған функцияны қолданатын және қораптан қырық кітапты орналастырып
қоюды моделдейтін программаны құру керек. Программа әр сөреге қойылған
кітаптың тізімін және орналастырып қойылмаған кітаптардың тізімін
қалыптастыру керек.

2 .Есептің алгоритмін жасау

Алгоритм дегеніміз есепті шешетін операциялар тізімі. Ол есепті шешу
процесі. Есептің программасын жазып, оның түбіне жету үшін қолдануға
қажетті немесе жеткілікті процедуралар мен функциялар жиыны.

3.Пайдаланылатын әдістер

Қазіргі кезде компьтерлерді қолданбайтын ешқандай облыс жоқ.
Компьютерлер көптеген мекмелерде бар ақпаратпен тиімді жұмыс жасауда
қолданылады. Мысалы, қызметкерлер туралы мәліметтер қорын жасағанда бізге
өте ауқымды ақпарат қорымен жұмыс жасауға тура келеді.
Ауқымды ғылыми-техникалық және экономикалық ақпаратпен жұмыс
жасайтын есептерді жасағанда бізге ондай ақпарат көлемімен жұмыс істейтін
массивтерді пайдалануға болады. Бірақ, массив бір типті ақпаратпен жұмыс
жасайды. Сондықтан массивтерді пайдалану тиімсіз болып табылады.
Мәліметтер қорымен жұмыс жасағанда әр түрлі типтермен жұмыс жасауға
тура келеді. Сондықтан да Си тілінде әртүрлі типті объектілерді сипаттау
үшін арнайы жасалған аралас типті ҚҰРЫЛЫМ(СТРУКТУРА) қолданылады.
Құрылым қазіргі кезде аралас мәліметтердің ортақ және пайдалануға
жеңіл болатын типі кеңінен қолданылады. Құрылым әртүрлі типті
компоненттерден құрала отырып, олардың арасында байланыс жасайды да,
біріңғай объект ретінде келеді.
Бұған қоса, есептің берілгенінде файл болған соң, файлдармен де
жұмыс жасайтын функцияларды қарастырғанымыз жөн.

3.1 Құрылым типінің сипатталуы

Құрылым – бұл структурленген, шектелген компоненттердің санынан
тұратын, мәлімет типі болып табылады. Жазба типін жариялау struct
идентификаторынан басталады. Екі ирек жақшаның арасында копоненттердің
жиыны тұрады, олар аймақтар деп аталады. Олардың әрқайсысынында типтің аты
жазылуы қажет.
Формат:
Struct аты
{
айнымалы типі айнымалы аты
...

айнымалы типі айнымалы аты
}

Мысал:
struct Car
{
int Number;
char Marka[20];
char FIO[15];
char Address[10];
} Mycar;
Mycar.Number=777;

Бұл жерде CAR жазбасы төрт компоненттен тұрады: нөмір, мәшинәнің
маркасының аты, аты-жөні және адресі.
Аймақ идентификаторы құрылым айналасында ғана біреу болу керек.
Бірақ, әртүрлі қателіктерді болдырмау үшін оның бүкіл программа үшін жалғыз
қылайық. Құрылым үшін керекті жады мөлшері оның аймақтарының ұзындығынан
құрылады. Құрылым аймақтарының мағыналары өрнектерде пайдалануға болады.
Бөлек аймақтардың аттары айнымалылар атымен болмауы қажет. Себебі ұқсас
типті жазбалардың бірнешеуі болуы мүмкін. Аймақпен жұмыс жасау үшін оның
айнымалы идентификаторы мен аймақ идентификаторы белгілі болуы қажет.
Осындай аттар ҚҰРАМА АТТАР деп аталады. Олардың арасында нүкте болады.
Мысалы, CAR типті жазбалармен жұмыс жасау үшін :
Mycar.Number, Mycar.Marka, Mycar.Fio, Mycar.Address
Аймақтың мағынасын енгізу үшін меншіктеу операторы қолданылады.
Мысалы:
Mycar.Number=1678;
Mycar.Marka=’Gaz-24’;
Mycar.Fio=’Ded Mozai i zaitsi’;
Mycar.Address=’Petrovka 38’;
Құрама аттарды енгізу-шығару операторларында пайдалануға болады:
Scanf(“%d%d”, &e1.hour,&e1.min); gets(e1.theme);
Printf(“%d%d%s”, &e1.hour,&e1.min, e1.theme);
Құрылымдарға қатысты меншіктеу операторын қолдануға болады. Бірақ
жазбалардың типі бірдей болуы керек. Мысалы,
Vcar.number:=Mycar.number;
Бұл оператордың орындалуынан кейін V жазбасының мағынасы M
жазбасының мағынасына тең болады.
Сіз бір кезде бірнеше экземплярды пайдалана аласыз. Яғни,
айнымалылары бірдей бірнеше құрылымдарды пайдалана аласыз. Мысалы:
Struct circle
{
Int radius;
Int xcoord;
Int ycoord;
} mycircle, yourcircle, ourcircle;
Осыдан кейін бір экземплярдың мазмұнын басқасына теңестіре аламыз.
Мысалы:
Yourcircle=mycircle;
Жоғардағы айтылған амалдарды құрылымдармен жеңіл қолдануға болады.
Бірақ, struct резервтелген сөзінің орнына typedef пайдалануға болады.
Typedef арқылы сіз өзіңіздің уақытыңызды үнемдей аласыз. Келесі жолдар
жоғарыда айтылған circle құрылымына пара-пар:
Typedef struct
{
Int radius;
Int xcoord;
Int ycoord;
} circle;

3.2 Мәліметтер құрылымы

Мәліметтер құрылымы – бір немесе бірнеше әр түрлі типті айнымалылардан
құралған, ыңғайлылық үшін бір атқа жинақталған мәліметтер жиыны.
Мәліметтер құрылымына қарапайым мысал болып – жұмысшы есеп карточкасы
табылады. Жұмысшы мәліметтері: аты, тегі, адресі, еңбек ақысы, тағы сол
сияқты мәліметтер құрылым компоненттері болып табылады. Кейбір
компоненттерінің өзін мәліметтер құрылымдарын үлкен программаларда
қолдануға тиімді әрі ыңғайлы.
Мәліметтер құрылымын struct кілті сөзінен басталатын фигуралы жақша
ішінде сипаттайды. struct сөзінен кейін мәліметтер құрылымына ат қоюға
болады. Компоненттері немесе айнымалылары жазба мүшелері деп аталады.
Олардың атын еркімізше таңдаймыз, көбінесе сипатталатын объектіге
байланысты таңдайды.
Басқа кез келген типтер сияқты бірнеше айнымалыларды, фигуралы
жақшадан кейін тізіп жазуға болады.

struct {...} x, y, z, сәйкесінше INT X,Y,Z;

Мәліметтер құрылымына да жадыдан орын бөлінеді. Қандай да бір
айнымалыны мәліметтер құрылымына сипаттамаса, онда оған жадыжан орын
бөлінбейді. Ол тек шаблон немесе мәліметтер құрылымы формасы ретінде
қалады, бірақ мәліметтер құрылымының атын қолдануға болады.

struct person
{
char name[namesize];
char address[adrsize];
long zipcode; * почталық индекс*
long ss_number; *әлеуметтік қорғау коды*
double salary; *еңбек ақы*
struct date birthdate;*туған күні*
struct date hiredate;*жұмысқа кірген күні*
};

3.3 ФУНКЦИЯ
Тілде функцияны көру екі нүктесінен анықтап қарауға ереді . -
біріншілердің , функция - мынау бір тап осы туынды үлгілерден , ал -
екіншілердің - мынау бағдарлама ең аз орындалатын модулі С . тілінде барлық
тілде функцияның анықтама форматын келесі болады :
үлгі аты _ функция ( параметрлердің егжей-тегжейін ашуы )
функция денесі
Осында үлгі немесе void ( функцияларға арналған , қайтарушылардың
емес мағынаның ), немесе функциямен қайтаратын мағына үлгі көрсетуі .

аты _ функцияның - немесе main үшін ең басты ( негізгінің )
бағдарлама функциялары , немесе бағдарламашымен өз бетімен таңдалатын аты (
теңестіру ).

параметрлердің егжей-тегжейін ашуы - мынау немесе бос , немесе
формалдық параметрлердің тізім , қайсы әрбір элемент түрды болады :

көрсету _ үлгінің аты _ параметрдің

Салыстырумен жіңішке белгілілермен сіздерге формалдық параметрлердің
анықтама тәсілдерімен , келесі көп нүктемен үтірлердің ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Си бағдарламалау тілі
Си программалау тілі
СИ бағдарламалау тілінде жадыны басқару
Java кең таралған программалау тілі
Жұмысшылар класын құру (C++ тілінде)
Информатика ( лекциялар )
Си тілінде құрылған программаның құрылымын сипаттау
Программа жұмысын басқару операторлары
Pascal және Си тілінде бағдарламалау
STRUCT операторын қолдана отырып тестілеуші программа құру
Пәндер