Процедуралар мен функциялар


Жұмыс түрі: Реферат
Тегін: Антиплагиат
Көлемі: 12 бет
Таңдаулыға:
Мазмұны
- Кіріспе . . . 5Pascal тілінің негізгі түсініктері . . . 5Turbo Pascal тілінің операторлары . . . 8
- Негізгі бөлім . . . 9Turbo Pascal тілінің көмекші бағдарламалары . . . 9Процедура түсінігі . . . 11Функция ұғымы . . . 14Мысал есептер . . . 15
- Қорытынды . . . 19
- Әдебиеттер тізімі . . . 20
І КІРІСПЕ
Turbo Pascal - жоғарғы деңгейлі программалау жүйесі. Паскаль бағдарламау тілі, XVІІ ғасырда өмір сүрген француз ғалым- философы Блез Паскальдің құрметіне аталып отыр. Осы тілді құрастырушы Швейцариядағы жоғарғы политехникалық мектептің инфроматикалық институтының профессоры Никлаус Вирт болып табылады. Паскаль тілі жөніндегі алғашқы дерек 1971 жылы пайда болып, содан бері тілдің дүниеге келген жылы болып табылады.
Тілдің ерекшеліктері:
- Тілдің қарапайымдылығы оны тез арада жете меңгеруге мүмкіндік береді
- Деректердің құрылысына қарай сандық, белгілік және екілік информациямен жұмыс жүргізуге және күрделі алгоритмді бағдарлама жасауға қызмет етеді.
1. 1 Паскаль тілінің негізгі түсініктері
Алфавиті
Арнайы таңбалар:
- арифметикалық және салыстыру амалдары (+, -, *, /, >, <, < >, <=, >=, @) ;
- арифметикалық және логикалық функциялар (DIV, MOD, NOT, AND, OR, IN, SHL, SHR) .
- әр түрлі тыныс белгілері:
- {}немесе(**) - түсініктеме жазатын жақшалар;
- [] - массив индекстерін және жиын элементтерін белгілеу;
- () - айнымалы тізімін белгілеу;
- ‘ ‘- апостроф; := - меншіктеу белгісі;
- ; - операторлар мен хабарларды ажырату;
- :- айнымалыны бөліп көрсету;
- =- айнымалының типін типтің сипаттамасынан немесе тұрақтыны өз мәнінен бөліп көрсету;
- , - тізім элементтерін ажырату;
Программа құрылымы:
Программа келесі бөлімдерден тұруы мүмкін, бұл бөлімдер (тек соңғыдан басқасы) бір-бірінен нүктелі-үтір арқылы ажыратылады
• программа тақырыбы;
• белгілер бөлімі;
• тұрақтылар бөлімі;
• типтерді сипаттау бөлімі;
• процедура мен функцияларды сипаттау бөлімі;
• программа денесі;
Программалау барысында алдын-ала анықтауды қажет етпейтін мәліметтердің стандартты типтері мен программалаушының өзі анықтайтын типтерді пайдалануға болады.
Стандартты типтер
- бүтін типтер - SHORTINT, INTEGER, LONGIN, BYTE, WORD;
- нақты типтер - REAL, SINGLE, DOUBLE, EXTENDED, COMP;
- логикалық тип - BOOLEAN ;
- символдық тип - CHAR ;
- жолдық тип - STRING ;
- ASCII - жолдық- PCHAR;
- текстік файл - TEXT;
Басқа типтердің барлығы типтер бөлімінде, айнымалылар немесе тұрақтыларды сипаттау бөлімінде анықталуы қажет. Нақты типтен басқа қарапайым типтер үшін мына функциялар анықталады:
- DEC(N) N-ді азайту (қысқарту)
- INC(N) N-ді үлкейту (ұзарту)
- ORD(N) N-нің рет нөмірі
- ODD(N) N-нің жұптығын тексеру
- PRED(N) N-нің алдынғы мәні
- SUCC(N) N-нің келесі мәні
Нәтижесі бүтін болатын мәліметтердің бүтін типтерімен жұмыс істеу үшін келесі арифметикалық функциялар қолданылады:
- ABS(N) N-нің абсолют шамасы
- A DIV B бүтін бөлу
- A MOD B қалдықты бөлу
- + қосу
- * көбейту
- - азайту
- TRANC(X) Х нақты санның бүтін бөлігі;
- ROUND(X) Х нақты санды бүтінге дейін дөңгелектеу;
- SQR(X) N санын квадраттау; Логикалық функциялар:
- NOT- терістеу;
- OR - біріктіру немесе логикалық қосу;
- AND -қиылысу немесе логикалық көбейту;
- XOR - екінің модулі бойынша қосу. Стандартты функциялар:
- ABS(X) -Х-тің абсолют мәні
- ARCTAN(X) - Арктангенс Х
- COS(X) -Косинус Х
- SIN(X) - Синус Х
- EXP(X) - е2
- FRAC(X) - Х-тің бөлшек бөлігі
- ARCCOS(X) =ARCTAN(SQRT(1-SQR(X) ) /X)
- ARCSIN(X) =ARCTAN(X/SQRT(1-SQR(X) ) ) Тілдің операторлары:
- BEGIN END құрама оператор;
- IF…THEN шартты оператор;
- CASE…OF таңдауоператоры;
- FOR… DO параметрлі қайталау операторы;
- REPEAT… UNTIL шартқа дейін қайталау операторы;
- WHILE… DO әзіргі шартқа байланысты қайталау;
1. 2 Турбо паскаль тілінің операторлары
Операторлар - программадағы нұсқаулардың (бұйрықтар, алгоритмдер) машиналық тілде жазылуы. Яғни берілген есепті шешу мақсатында орындалатын іс-әрекеттердің машинаға түсінікті түрде жазылуы. Сонда, программа денесі бірінен кейін бірі жазылған операторлар тізбегінен тұрады. Операторлар арасына нүктелі үтір (; ) белгісі қойылады.
Операторлар қарапайым және күрделі (құрама) операторлар болып екі топқа бөлінеді. Егер оператор құрамында басқа операторлар болмаса, онда ол қарапайым оператор деп аталады. Бұл топқа: меншіктеу, процедураны шақыру, шартсыз көшу - GOTO, бос орын операторы жатады.
Күрделі (құрама) оператор бірнеше қарапайым операторлардан тұрады. Бұл операторлар begin (басы) және end (соңы) қызметші сөздер арасында жазылады. Әр оператордан кейін (; ) нүктелі үтір таңбасы қойылады.
Құрама оператордың жалпы жазылуы:
Begin
1-оператор;
2-оператор;
3-оператор;
. . .
N-оператор;
End;
Begin (басы) және end (соңы) сөздерін операторлар жақшасы деп аталады. Құрама операторлар ішінде тағы бір құрама оператор болуы мүмкін. Құрама операторға шартты көшу, таңдау және қайталау операторлары жатады.
II НЕГІЗГІ БӨЛІМ
2. 1 Turbo Pascal тілінің көмекші бағдарламалары
Бағдарламалау барысында көптеген бір типті есептеулерге бірнеше бір-біріне ұқсас бағдарлама фрагменттерін қайта-қайта жазуға тура келеді. Осындайда артық жұмыс жасамай, барлық есептеулерді бір ғана фрагмент ішінде орындау үшін, көмекші бағдарламалар - процедуралар мен функциялар қолданылады. Мысалы, бағдарламаларды орындау барысында бірнеше рет ұқсас есептеулер кездеседі, онда есептеу блогын бір-ақ рет көмекші бағдарламаға жазып қойып, бағдарламаның кез-келген нүктесінен көмекші бағдарламаны шақырып, осы блог арқылы есептеуді шақыруға болады. Сонымен, көмекші бағдарламалар деп бағдарламаның орындалу барысында бірнеше рет шақырылып орындалып тұратын операторлар блогынан тұратын көмекші блогын айтамыз.
Көмекші бағдарламалар стандартты және пайдаланушылар көмекші бағдарламалар болып екіге бөлінеді. Стандарты функциялар мен процедуралар Turbo Pascal тілінің құрамында тұрақты системалық атпен аталып орындалады. Оларға арнаулы USES пайдаланушылар кітапханасында орналасқан - SYSTEM, CRT, GRAPH, GRAPH3, OVERLAY, PRINTER, TURBO3, TURBO VISION модульдерінің барлық функциялары мен процедуралары жатады. SYSTEM модульдерінің функциялары мен процедуралары Turbo Pascal бағдарламасымен бірге автоматты түрде іске қосылады, сондықтан оны пайдаланушылар бөлімінде көрсетпесе де болады. SYSTEM модулінен өзге модульдер процедуралары мен функцияларын қолдану үшін бағдарламаның басында міндетті түрде олардың аттарын USES пайдаланушылар бөлімінде жазу керек, мысалы:
PROGRAM Komek;
USES Graph, Crt;
Мұндағы, Graph, Crt модульдеріндегі стандарты процедуралар мен функцияларды бағдарламада пайдалану үшін ашу.
Пайдаланушылар көмекші бағдарламалары деп бағдарламалаушының өзі құрып, аты да өзіне ыңғайлы идентификатормен белгіленетін процедуралар мен функцияларды айтады. Олар PROCEDURE және FUNCTION қызметші сөздерімен жазылады.
Көмекші бағдарлама құрылымы:
<Көмекші бағдарлама қызметші сөзі> <көмекші бағдарлама тақырыбы>;
<Көмекші бағдарлама кездесетін индентификаторларды сипаттау бөлімдері>;
<Көмекші бағдарлама денесі>.
Көмекші бағдарламалардың жазылу тәртібі де негізі бағдарлама сияқты бірнеше бөлімдерден тұруы мүмкін, мысалы:
1) Тұрақтылар бөлімі;
2) Типтер бөлімі;
3) Айнымалылар бөлімі;
4) Операторлардан тұратын бағдарлама денесі.
Көмекші бағдарламаның аты идентификатормен белгіленеді. Бағдарламада бірнеше процедура мен функция болуы мүмкін. Сол сияқты, көмекші бағдарламаның да өзінің көмекші бағдарламасы болуы мүмкін. Оларды ішкі бағдарламалар деп атайды. Негізі бағдарламада сипатталған идентификаторларды көмекші бағдарламалардың ішіне де сол сипатталған типпен қолдануға болады. Олармен белгіленген айнымалылар ауқымды деп атайды. Ал көмекші бағдарламада сипатталған идентификаторларды тек өзінің ішкі бағдарламасында ғана қолдануға болады. Ол айнымалыларды жергілікті деп атайды.
Көмекші бағдарлама өздерінен орындалмайды, оның орындалуы үшін негізі бағдарламаның аты мен параметрлерін жазып шақырады, ол жерді көмекші бағдарламаны шақыру нүктесі деп атайды. Көмекші бағдарламалардың орындалу саны шақыру нүктелерінің санына байланысты болады.
Егер негізі бағдарламада бір шақыру нүктесі болмаса, онда көмекші бағдарлама орындалмайды. Бағдарлама орындалу барысында алдымен негізі бағдарлама орындалады да, керек кезде көмекші бағдарлама шақырылады. Көмекші бағдарламаны шақыру нәтижесінде негізі бағдарлама уақытша тоқтайды да, басқару бағдарламаға барады. Көмекші бағдарлама денесі, негізі бағдарламадан алған барлық деректерді толық өңдеп, орындалғаннан кейін, басқаруды шақыру нүктесінде өңделген жаңа деректермен бірге қайтарып береді де, негізі бағдарлама орындалуын ары қарай жалғастырады.
Негізі бағдарламадан деректер қабылдау және көмекші бағдарламадан өңделіп жаңарған деректерді негізгі бағдарламаға қайтару көмекші бағдарламалар параметрлері көмегімен атқарылады. Процедуралар мен функциялардың нақты және формальді параметрлері болады. Бағдарлама орындау барысында есептелген нақты деп, ал көмекші бағдарламалардың тақырыбында көрсетілген параметрлер формальді деп аталады. Нақты және формальді параметлердің типі, саны, реттілігі сәйкес болуы тиіс. Олар бірдей белгіленуі де мүмкін. Нақты параметрлер тұрақтылардан, айнымалылардан және өрнектерден тұруы мүмкін. Кей жағдайларда көмекші бағдарламаның формальді параметрлерін көрсетпесе де болады.
2. 2 Процедура түсінігі
Процедура деп белгілі бір идендификатормен аталып, сол атпен программаның кез-келген жерінен шақырып, белгілі бір есептеулерді орындауға болатын программаның тәуелсіз бөлігін айтады. Процедураның құрылымы программа құрылымына ұқсас келеді.
Процедураның құрылымы:
(тақырыбы:)
PROCEDURE аты (формальді параметрлер типтері) ;
Сипаттамалар бөлімдері; (бұл бөлімдер болмауы да мүмкін)
BEGIN Операторлар; (процедура денесі)
END;Программада процедураны пайдалану үшін процедураның атын нақты параметрлермен бірге жазып шақырады, ол жерді процедураны шақыру нүктесі деп атайды. Программа процедураның шақыруын оқыған кезде процедураның орындалуы басталады. Мысалы прпограмма тақырыбы төмендегідей болса:
PROCEDURE SUMMA (N, M, X:INTEGER) ;
Онда процедураны программада мынадай жолмен шақыруға болады.
Summa (19, A, 50) ;
Жақшадағы 19 А 50-нақты параметрлер болып табылады. Нәтижесінде процедурадағы формальді параметрлер мынадай мәндерге ие болады:
N=19, M=A, X=50.
Процедура шақыру процесінде формальді параметрлердің мәндері нақты параметрлердің мәнін қабылдайды да, процедура денесіндегі есептеулерде сол жаңа мәндер пайдаланылады.
Процедураның параметрлері мәндік және айнымалы болып екіге бөлінеді. Мәндік (аргументтік) параметрлер тек қана нақты параметрлердің мәнін өзіне қабылдайды да, қайтып оларға өзінің мәнін бере алмайды. Процедураның бір рет орындалуы барысында негізгі программаның бірден бірнеше идендификаторлары жаңа мән қабылдай алады. Айнымалы параметрлердің алдына VAR қызметші сөзі қойылып жазылады.
Мысалы:
PROCEDURE Misal (A, B:Integer; VAR X, Y: Longint) ;
Var S: Integer;
Begin S:=A+5*B;
X:Sqr(S) ;Y:Sqr(X) ;
END;
Бұл процедураны программалық текстте төмендегідей жазып шақыруға болады:
Misal (10, 5, K, l) ;
Проограмма орындалу барысында Misal (10, 5, K, l) шақыру идендификаторын оқып, басқаруды Misal процедурасына жібереді де, төмендегідей әрекеттер орындалады.
1. процедураның А, В, Х, Ү формальді параметрлері (10, 5, K, l) нақты параметрлердің мәнін қабылдайды:
А=10, В=5, Х=K, Ү=I;
2. процедура денесіндегі операторлар орындалады;
S=10+5*5=35, X=35*35=1225,
Y=1225*1225=1500625;
3. VAR қызметші сөзінен кейінгі жазылған формальді Х және Ү параметрлері процедураның орындалу барысында меншіктеген өздерінің жаңа мәндерінің нақты К-мен І параметрлеріне бергеннен кейін, басқару Misal (10, 5, K, l) шақыру идендификаторынан кейін тұрған операторға өтеді;
К=X=1225, I=Y=1500625
4. әрі қарай программаның есептеулерінде К және І айнымалылары жаңа меншіктеген мәндерімен қатысады.2. 3 Функция ұғымы
Функциялардың атқаратын қызметі мен жұмыс принциптері процедураларға ұқсайды. Функциялардың процедуралардан негізінен екі айырмашылықтары бар:
Функциялар өрнек операндалары ретінде қолданыла береді. Функция шақыру нүктесіне бір ғана өзінің атына меншіктелген скалярлық шаманы қайтарады. Процедуралар шақыру нүктесіндегі бірнеше идендификаторға жаңа мәндер қайтарып бере алса, ал функциялар бір шақыру нәтижесінде бір ғана идендификаторға жаңа мән бере алады.
Функциялар құрылымы:
Function аты (формалді параметрлер: типтері) :типі;
Сипаттамалар бөлімдері; (*бұл бөлімдер болмауы да мүмкін*)
BEGIN Операторлар бөлімі;
Аты:=(*функция жаңа мән меншіктейді*) (*функция денесі*)
END;Функциялар да процедуралар сияқты шақырылады. Негізгі программа жаңа мән беру үшін функция денесінде функцияның идендификаторы кемінде бір мән меншіктеуі тиіс. Шақыру нүктесіне функцияның соңғы меншіктеген нәтижесі жаңа мән болып қайтарылады.
2. 4 Мысал есептер
Процедура құру мысалдары
- Х1=1. 7, X2=3. 52, X3=18. 7 м әндері үшін y=3x2+-10 функциясы мәндерінің қосындысын табу керек., яғни S=y(x1) +y(x2) +y(x3) есептеу керек
Program esep1;
var x1, x2, x3, y1, y2, y3, s:real;
procedure espt(var t:real; var p:real) ;
begin
p:= 3*sqr(t) +sqrt(6*t) -10;
end;
begin
write(‘x1, x2, x3=?’) ;
readln(x1, x2, x3) ;
espt(x1, y1) ;
espt(x2, y2) ;
espt(x3, y3) ;
s:= y1+y2+y3;
write(‘s=’, s)
end.
- Қатеттері бойынша үшбұрыштың ауданы мен гипотенузасын табу процедурасын құру.
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

Ақпарат
Қосымша
Email: info@stud.kz