Айнымалыларды хабарлау бөлімі
Р е ф е р а т
ТАҚЫРЫБЫ: ПАСКАЛЬ БАҒДАРЛАМАЛАУ ТІЛІНІҢ ЭЛЕМЕНТТЕРІ
Дайындаған : Ахметова Айымгүл
ЖОСПАР
I КІРІСПЕ
II ПАСКАЛЬ БАҒДАРЛАМАЛАУ ТІЛІНІҢ ЭЛЕМЕНТТЕРІ
§ 1. ПРОГРАММАЛАУДЫҢ ЭЛЕМЕНТТЕРІ
§ 2. ПАСКАЛЬ ОРТАСЫНДА ЖҰМЫС ІСТЕУ
III ҚОРЫТЫНДЫ
IV ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР
КІРІСПЕ
XXI-ғасырды – ақпараттық технологиялар дәуірі деп атайды. Қазіргі
кездегі ғалым немесе кез-келген маман қандай да бір мәселені (есепті шешу),
үшін ол ақпаратты дұрыс өңдей білу керек. Сондықтан ол ақпараттану
(информатика) білімінсіз бұл мәселені шеше алмайды. ЭЕМ-ді қолдануды, бұл
өңдеудің белгілі бір бөлігін, адамның қатысуынсыз жұмыс істейтін және
жылдамдығы адамның жылдамдығынан бірнеше миллион есе көп, автоматты
құрылғыларға аударуға болады.
ЭЕМ-дер адам қызметінің барлық салаларына еніп жатыр, сондықтан онымен
жұмыс істеуге ұмтылған адамдар үзілізсіз артуда. Есептеу машиналарын
көпшіліктің жаппай пайдалануында, түрлі программалау тілдерінің алатын
орнының мағынасы үлкен. ЭЕМ-мен қатынас тілі түсінікті және қарапайым
болған сайын, адам мен ЭЕМ-нің өзара байланысы тиімді болады. Программалау
дағдыларын бала кезінен қалыптастыруға болатын, миллиондаған қолданушыға
түсінікті болатын программалау тілдері ерекше қызығушылық танытты.
ЭЕМ-нің дамуымен қатар оған қажетті базалық программалық құралдар да
дамып отырды. Бірінші кезекте бұл программалау тілдеріне қатысты, олардың
көмегімен адамдар есептерді ЭЕМ-де шешу үшін кодтауды үйренді. Оларды да
бірнеше кезеңге бөлуге болады.
Бірнеше кезең – 50 жылдардың соңына қарай программалау құрылымы, дәл
кодтау тәсілі арқылы ұзын командалар тізбегі екілік, сегіздік және
оналтылық сандар қолданылды. Бұл қызметтің программалаудан айырмашылығы
кодтау деп аталды да, оның алдына – алгоритмді құрастыру міндеті қойылды.
Екінші кезең – оларға Ассемблер тілдері жатады, олармен жұмыс істеу
машиналық тілге қарағанда жеңілірек болды. Оларда нақтылы комендаларға
арнайы сақтау әдістері қолданылды.
Үлкен көлемді, жадылы, жылдам есептегіш машиналарының пайда болуы,
кодтау қиындықтарын соншама өсірді, олармен адамдардың жұмыс істеуі тиімсіз
бола бастады.
Бір машинадан, екінші машинаға программаны қайта кодтау қажеттілігі
кезінде алгоритмдердің көбінесе аударуға келмейтіні бақыланды, сондықтан
нақтылы машиналарға аппараттық есеп жүргізуге қажеттілік туды.
Бөтен программалардың құрылу принципін түсіну жалпы тәжірибеде мүмкін
болмады.
Машина тілінде жазылған программаларда, қажет емес ақпараттардың
есебінен құралатын қателіктер түзелетін болған. Нәтижеде программаларды
түрлі техникалық жөндеуге келмейтін естен тандырып, түрлі қателіктермен
толтырады, соның салдарынан оларды ашу мүмкін болмады. Болашақ студент оның
себебін іздеумен аптплап отыратын болған, ал программа іс жүзінде дұрыс
жазылған не себепті жұмыс істемейді.
Бұл қиындықтан шығудың жолы “жоғарғы деңгейлі” программалау тілдерінің
жасалуына себепші болды.
Үшінші кезең – тілдердің ең “көлемді” кезеңі. Ол 1955 жылы Фортран
(FORmulf TRANslator – формулалар аудармашысы) тілінің пайда болуынан
басталады. Бұл тілдің пайдаланылуы осы күнге дейін жалғасып келеді.
1970 жылы Никлаус Вирт PASCAL (Паскаль) тілін жасады. Бұл тіл, әсіресе
қазіргі кездегі қолданыстағы түрі, жан-жақты жетілген құралдармен
жабдықталған болып саналады.
§ 1. ПРОГРАММАЛАУДЫҢ ЭЛЕМЕНТТЕРІ
Паскаль ASCII кодының төмендегідей символдар қорының жиыншасын
қолданады:
• латын алфавитінің А-дан Z-ке дейінгі және а-дан z-ке дейінгі әріптері;
• 0-ден 9-ға дейінгі араб сандары;
• оналтылық сандар - 0-ден 9-ға дейінгі араб сандары және А-дан F-ке
дейінгі және а-дан f-ке дейінгі әріптер;
• арнайы символдар - + -* = [].,():;^{}S # @;
• құрамды символдар - : = = = .. (* *) (. .);
• жол соңы және күймешені (курсорды) қайтару символдарын қоса алғандағы
ASCII кодының барлық басқарушы символдары және бос орын.
Ескерту: (* *) символдар жұбы { } жүйелік жақшаларға пара-пар; (. .)
символдар жұбы [ ] тік жақшаларға пара-пар.
Келесі сөздер Паскаль тілінде резервтелінген болып табылады:
absolute, and, assembler, asm, array, begin, case, const, constructor,
destructor, div, do, downto, else, end, external, far,file, for, forward,
function, goto, if, implementation, in, inline, interface, interrupt,
label, mod, near, nil, not, object, of, or, packed, private, procedure,
program, record, repeat, set, shl, shr, string, then, to, type, unit,
until, uses, var, virtual, while, with, xor.
Идентификаторлар
Идентификаторлар тұрақтылардың, типтердің, айнымалылардың,
процедуралардың, модульдердің, программалардың және жазбалардағы өрістердің
аттары ретінде пайдаланылады. Идентификаторлардың жүру аймағында оның
мағынасы бір мәнді болуы қажет. Идентификаторлардың аты ретінде
резервтелінген сөздерді пайдалануға тиым салынады.
Паскальда идентификаторларды құрудың бірнеше ережелері бар. Олардың
қысқаша сипаттамалары мынандай:
• Барлық идентификаторлар әріптен немесе сызу белгісінен басталуы қажет
және оның құрамында бос орын болмауы керек. Келесі символдар ретінде әріп,
сызу белгісі, сан болуы мүмкін. Басқа символдарды пайдалануға болмайды;
• Идентификаторлардың ұзындықтары әр түрлі болуы мүмкін, бірақ олардың
алғашкы 63-і ғана пайдаланылады;
• Идентификаторлар пернеліктің бас және кіші әріптерін айырмайды, яғни
АВВА идентификаторы abba идентификаторына пара-пар.
Дұрыс идентификаторлардың мысалдары; А1, PRIMER, В7А, FLAG.
Дұрыс емес идентификаторлардың мысалдары:
1А - идентификатор саннан басталып түр;
А+1 - арнайы "+" символы пайдаланылып тұр.
Программаның құрылымы
Паскаль тілінде программалар тақырыптан, блоктан және . (нүкте)
белгісінен тұрады.
Программаның тақырыбы программа атынан және параметрлер тізімінен
тұрады:
Program программа - аты (идф1, идф2,...,идфN);
мұндағы идф1, идф2, ..., идфN - программаның сыртқы ортамен байланысын
жүзеге асыруға көмектесетін файлдардың идентификаторлары; идф1 және идф2
ретінде көбінесе стандартты енгізу (INPUT) және шығару (OUTPUT) файлдары
көрсетіледі. Әдетте параметрлер көрсетілмейді.
Паскальда блок екі бөлімнен тұрады: сипаттау және орындалу. Әрбір блок
процедураның немесе функцияның хабарлануының бөлігі не болмаса программаның
немесе модульдің бөлігі болады. Хабарлау бөлімінде хабарланған барлык
идентификаторлар мен белгілер блок ушін жергілікті болып табылады.
Орындалу бөлімі программа операторларын қамтитын құрамды оператордан
тұрады.
Сипаттау бөліміне модульдерді іске қосу, белгілерді, тұрақтыларды,
типтерді, айнымалыларды, процедуралар мен функцияларды сипаттау сияқты
бөлімшелер енеді.
Паскаль тіліндегі программаның жалпы құрылымын келесі түрде көрсетуге
болады:
Program программаның аты (Input, Output);
Uses модульдер;
Label белгілер;
Const тұрақтыларды хабарлау;
Туре деректер типін сипаттау;
Var айнымалыларды хабарлау;
процедураларды (Procedure) және функцияларды (Function) сипаттау.
Begin
программаның денесі
End.
Программада барлық - USES, LABEL, CONST, ТУРЕ, VAR, PROCEDURE және
FUNCTION алты хабарлау бөлімдерінің болуы міндетті емес.
Модульдерді іске қосу бөлімі
Паскаль тілінде модульдер модульді программалаудың негізі болып
табылады. Олар әртүрлі программаларға ендіріле алатын библиотекаларды құру
үшін пайдаланылады. Ал үлкен программалар логикалық байланысқан модульдерге
бөлініп жазыла алады.
USES сөйлемінде программада пайдаланылып отырған барық модульдер
идентификацияланады. Оларға тікелей пайдаланылып отырған модульдер және осы
модульдер пайдаланып отырған модульдер кіреді.
SYSTEM модулі әрқашан автоматты түрде пайдаланылады. SYSTEM барлық
төменгі деңгейді, файлдық енгізушығару, жолдарды өңдеу, жылжымалы үтірлі
операция, жадының динамикалық үлестірілуі және т.б. жүзеге асырады. Паскаль
тілі SYSTEM модулінен басқа PRINTER, DOS және CRT сияқты көптеген
модульдерді жүзеге асырады. Олар автоматты түрде пайдаланылмайды. Қаіжет
болған жағдайда олар USES сөйлеміне міндетті түрде қосылуы керек. Мысалы:
Uses DOS, CRT; {енді DOS және CRT құралдарымен жұмыс істеуге болады}.
Белгілерді сипаттау бөлімі
Программада кез келген оператор белгімен белгіленуі мүмкін. Белгі
ретінде 0-ден 9999-ға дейінгі кез келген санды немесе идентификаторды
қолдануға болады. Бастапқы нөлдер есептелмейді (мысалы 0909 бегісі 909
белгісіне пара-пар). Белгі оператордың алдына қойыльш, одан қос нүктемен
ажыратылады. Белгі көшу (GOTO) операторымен бірге пайдаланылады.
Программада пайдаланылған барлық белгілер LABEL бөлімінде үтір арқылы
бөлініп жазылуы қажет. Мысалы 10, 20 және met белгілері келесі түрде
сипатталады және пайдаланылады:
Label 10, 20, met;
10: оператор
20: оператор
met: оператор
Тұрақтыларды сипаттау бөлімі
Бұл бөлімде тұрақтылардың синонимі ретінде әлдебір идентификаторлар
енгізіледі.
Мысалы:
сonst идк1=тұрақты1; идк2=тұрақты2;...идкN=тұрақтыN
мұндағы ИДКJ-ші тұрақтының идентификаторьн сипаттайды;
ТҰРАҚТЫJ - тұрақты мән немесе тұрақгы өрнек.
Бұл жердегі тұракты өрнек дегеніміз компилятор объекті кодты кұру
(компиляция) кезеңінде есептей алатын өрнек. Тұрақты өрнектің карапайым
түрі - тұрақгы мән.
Әрбір тұрақтыны анықтау үшін қандай да бір тұрақты мәнді белгілейтін
идентификатор еңгізіледі,
Тұрақтыларды анықтау бөлімін пайдалану арқылы программаларда
тұрақтыларды айқын түрде пайдаланбауға болады. Const бөлімінде берілген
тұрақтылардың мәнін программада өзгертуге болмайды.
Тұрақтыларды хабарлауда хабарлауы бар блоктың ішіндегі тұрақтыларды
белгілейтін идентификаторлар болады. Тұрақтының идентификаторы жеке өзінің
хабарлауына енуі мүмкін емес.
Тұрақтыларды хабарлаудың бірнешс мысалдарын көрсетейік;
Const Min=0;
Мах=100;
Rad=(Max-Min) div 2;
ErKod='10';
ErrStr=' Error'+ ErKod;
Тұрақтылар арифметикалық, символдық, жолдық және логикалық болып
бөлінеді.
Арифметикалық тұрақтылар бүтін және нақты болып бөлінеді.
бүтін тұрақтылар
ZAAA...A
түрінде жазылады, мұндағы Z - тұрақгының таңбасы: оң (+), теріс (-) немесе
болмауы мүмкін (өздігінен +), А - 0-ден 9-ға дейінгі сандар. Бутін
тұрактылардың сандық мәндері [-32768. 32767] диапазонында болуы керек.
Мәндері [0, 255 диапазонында жататын бүтін тұрақтыны байттық тұрақгы де
атайды.
Бүгін тұрақтыны оңалтылық түрде көрсетуге болады:
ZSBB...B
мұндағы Z - түрақтының таңбасы: оң (+), теріс (-) немесе болмауы мүмкін
(өздігінен +), $ - санның оңалтылық түрде көрсетілгенінің белгісі, В - 0-
ден 9-ға дейінгі және А-дан Ғ-дейінгі оңалтылық сандар.
Бүтін тұрақтылардың мысалдары: 1, +5, -125, $А4.
Нақты тұрақтылар екі түрде жазылуы мүмкін: ZAA...A.BB...B,
немесе реті көрсетіліп
ZAA...A.BB...B EzCC.C,
мұндағы Z — тұрақгының таңбасы, z - реттің таңбасы: оң (+), теріс (-)
немесе болмауы мүмкін (өздігінен +), А, В, С - 0-ден 9-ға дейінгі сандар.
Нақты тұрақтылардағы Е (экспонента) техникалық белгілеуі "онның дәрежесі"
ретінде оқылады. Егер жазылуда нүкте бар болатын болса, онда оның алдында
және артында ең болмағанда бір-бір саннан болу керек. Реті көрсетілген
нақты тұрақтылар өте үлкен немесе өте кіші сандардың жазылуы ыңғайлы
болу үшін кызмет атқарады.
Нақты тұрақтылардың мысалдары:
- 45.511
7Е-2 "7 көбейтілген 10-ның -2 дәрежесі" =0.07;
12.25Е+6 "12.25 көбейтілген 10-ның 6 дәрежесі " =12250000
Жолдық тұрақты - программаның бір жолына жазылған және тырнақшаға
(апостроф) алынған символдар тізбегі больп табылады. Егер жолдық тұрақгы
бір символдан ғана тұратын болса, онда ол символдық тұрақгы деп аталады.
Апострофтар арасында ешқандай символдары жоқ символдар жолын бос жол деп
атайды. Екі апостроф арасындағы тізбекте кез келген символдар немесе
бос орын бола алады. Басқарушы символдар екі белгінің көмегі арқылы
көрсетіледі. біріншісі - ^, екіншісі - көрінетін символ (Ctrl пернесінің
және көрінетін символдың бір мезгілде басылуы сияқгы). Белгілердің ондық
түрде көрсетілуі # символынан және одан кейін келетін белгінің ондық
кодынан (255-тен аспайтын) тұрады, ал белгілердің оналтылық түрде
көрсетілуі #$ және оналтылық белгілерінен тұрады. Жолдық тұрақтылардың
мысалдары: 'Text', 'A', #61, #$А2, ^G.
Логикалық тұрақтылар "Ақиқат" және "Жалған" деген түсініктерге сәйкес
TRUE және FALSE идентификаторларымен өрнектеледі.
Типтерді сипаттау бөлімі
Программаларда, модульдерде, процедураларда және функцияларда типтерді
хабарлауға арналған бөлім бар.
Айнымалыны хабарлағанда оның типін көрсету қажет. Айнымалының типі
оның қандай мән қабылдай алатынын және оған қандай әрекеттер пайдалануға
болатынын аныктайды. Тип идентификатормен аныкталады.
Идентификаторды типті хабарлаудың сол жағында көрсетеді және ол осы
типті хабарлау кездесетін блок программалар, процедуралар және функциялар)
үшін сол типтің идентификаторы болып анықталады.
Типтердің үлкен үш класы бар:
• жай типтер;
• құрылымды типтер (массивтер, жазбалар, жиындар, файлдар);
• көрсеткіш (указатель) тип.
Типті хабарлау TYPE кілттік сөзінен, сипатталып отырған типтің
идентификаторынан, = (тең) белгісінен, питің анықтамасынан және; (нүктелі
үтір) белгісінен рады.
Мысалы:
Type
Number = Integer;
Color = (Red,Green,Blue);
CharVal = Ord{'A') ... Ord( 'Z') ;
TestIndex = 1...100;
TestValue = -99...99;
TestList = Array [TestIndex] Of TestValue;
TestListPtr = ^TestList;
Date = Record
Year: Integer;
Month: 1 ... 12;
Day: 1 ... 31;
End;
Айнымалыларды хабарлау бөлімі
Жаңа айнымалылар мен олардың типтерін білдіретін идентификаторлар
кестесі айнымалыларды хабарлау болып табылады.
Айнымалыларды хабарлаудың жалпы түрі төмендегідей:
Var идп1, идп2, идпЗ:
идп4, цдп5: тип2;
Мұндағы ИДПJ – ТИП1 немесе ТИП2 жататын J-шы айнымалының
идентификаторы.
Айнымалыға берілетін тип типтерді хабарлау бөліміндегі бұрын анықталған
типтің идентификаторы бола алады. Сондай-ақ бұл жаңадан анықталған тип те
бола алады.
Айнымалыларды хабарлау бөлімінде идентификаторды көрсеткенде, бұл
айнымалы осы хабарлау кездескен блокта анықталған деп саналады және оның
идентификаторы алдыңғы блокқа кіретін блокта қайта анықталмаған болса, онда
оны блоктың кез келген жерінде шақыруға болады.
Қайта анықтау жаңа айнымалыға алдында қолданылған идентификаторды
қолдануды білдіреді, бірақ бұл қолдану алғашқы пайдаланылған айнымалының
мәніне әсер етпейді.
Айнымалыларды хабарлаудың мысалын келтірейік:
Var
X, Y, Z : Real;
I, J, K : Integer;
Digit : 0 ... 9;
Done, Error : Boolean;
Operator : (Plus, Minus, Times);
Matrix : Array [1 ... ..10,1 ... .10] of Real;
Блоктың сыртында хабарланған айнымалылар жалпы деп аталады. Блоктың
ішінде хабарланған айнымалылар жергілікті деп аталады.
Қосалқы программ аларды анықгау және сипаттау
Қосалкы программалар процедуралар және функциялар болып бөлінеді.
Қосалқы программаны анықтау қосалқы программаны шақырғаннан кейін тікелей
орындалатын іс-әрекеттерді анықтайды. Функция үшін нәтиженің типі
қосымша анықталады.
Егер қосалқы программаны шақыру оның жүру аймағында болатындай қосалқы
программалардың анықталуының орналасуы мүмкін болмаса, онда қосалқы
программаның сипатталуы қажет. Сипаттаудың анықтаудан айырмашылығы ол
қосалқы программалардың идентификаторын және параметрлерін көрсету үшін
ғана қызмет атқарады.
Түсініктемелер
Кейде программада айнымалы нені білдіретіндігін, функция немесе оператор
қандай іс-әрекет жасайтыны жайлы еске салатын немесе хабарлайтын ескертулер
қою қажет болады. Бұл ескертулер түсініктемелер деп аталады. Паскальда
программаға қанша болмасын түсініктемелер қоюға болады.
Түсініктемелер сол жақ жүйелік жакшадан '{' (немесе '(*'
комбинациясынан) басталады және оң жақ жүйелік жақшамен '}' (немесе '*)'
комбинациясымен) аякталады. ' (*'-дан басталған түсініктеме барлық жүйелік
жақшаларды ескермейді және керісінше.
Ашылған жүйелік '{' жақшадан кейін $ символы кездесетін түсініктеме
копмилятордың директивасы болып табылады.
Түсініктемелердің мысалдары:
{Шешу әдісі}
(*Циклдің басы*)
{$0+} немесе {$О-} - оверлейлік кодты генерациялауға мүмкіндік
береді немесе сол
мүмкіндікті алып тастайды.
Түсініктеме бірнеше жолдан тұра алады:
{Бұл бірнеше жолдан тұратын түсініктеменің мысалы}.
Программаның мысалы
KRAMER программасын қарастырайық. Бұл программада DETER квадратты
матрицаның анықтауышын есептеу процедурасының көмегімен сызықты алгебралық
теңдеулер жүйесінің шешімі табылады.
{Ах=Ь теңдеулер жүйесін Крамер әдісімен шешу программасы }
Program Kramer;
Const N=5;
Type
Tmac = Array[1..N,1..N] Of Real;
Tvec = Array[1..N] Of Real;
Var
A,R : Tmac;
В,X : Tvec;
DT, S : Real;
I,J,К : Integer;
Procedure Deter{A: Tmac; Var D: Real);
Label 10,20;
Var
IL,JL,KL : Integer;
С : Real;
Begin
For IL:=1 To N-l Do
Begin
If A[IL,IL]=0.0 Then
Begin
For JL:=IL To N Do
If A[JL,IL]0.0 Then Goto 10;
D:=0.0; Goto 20;
10: For KL:=IL To N Do
Begin
C:=A[IL,KL];
A[IL,KL]:=A[JL,KL];
A[JL,KL]:=C;
End;
End;
For JL:=IL+1 To N Do
Begin
C:=A[JL,IL]A[IL,IL];
For KL:=IL To N Do
A[JL,KL]:=A[JL,KL]-C*A[IL,KL];
End;
End;
D:=1.0;
For IL:=1 To N Do
D:=D*A[IL, IL];
20:;
End; {Deter процедурасының соңы}
Begin
{ A массивінің элементтерін енгізу }
For I:=1 To N Do
For J:=l To N Do
Read(A[I,J]);
{ В векторының элементтерін енгізу }
For I:=1 To N Do
Read(B[I]);
For I:=l To N Do
For J:=l To N Do
R[I,J]:=A[I,J];
Deter(R,DT);
if DT=0.0 Then Writeln (‘Теңдеулер жүйесінің шешімі жоқ’)
Else
Begin
For I:=l To N Do
Begin
For J:=l To N Do
For K:=l To N Do
R[J,K] :=A[J,K];
For J:=l To N Do
R[I,J]:=B[j};
Deter(R,S);
X[I]:=SDT;
End;
Writeln ('шешімі');
For I:=1 To N Do
Writeln(X[I]);
Writeln;
End;
End.
Программа түсініктемеден басталады. Екінші жолда Program өзекті
сөзінен кейін KRAMER программасының аты жазылған. Келесі жолда N
идентификаторы 5 тұрақты санын сипаттап тұр. Мұнда сызықты алгебралық
теңдеулер жүйесінің реті белгіленіп тұр. Шешілгелі отырған теңдеулер
жүйесінің ретін өзгерту үшін (мысалы, үшінші ретті теңдеулер жүйесі) CONST
N=3; операторын жазу қажет.
Келесі үш жолда деректердің жаңа типтері енгізілген: ТМАС
идентификаторы нақты сандардың N*N матрицасын білдіретін объектілерді
сипаттайды; TVEС идентификаторлары нақты сандардан тұратын N өлшемді
векторларды білдіретін объектілерді сипаттайды.
Программаның 8-ші және 11-ші жолдар аралығында А, R, В, X, DT, S, I,
J, К айнымалылары келесідегідей анықталады: А және R идентификаторлары N
өлшемді ТМАС типті квадраттық матрицаларды анықтайды; В және X
идентификаторлары N өлшемді TVEС типті векторларды анықтайды; DT және S
идентификаторлары нақты типті скалярлық айнымалыларды анықтайды (REAL); I,
J және К идентификаторлары бүтін типті скаляр айнымалыларды анықтайды
(INTEGER).
12-ші жолдан бастап 43 -ші жолға дейін квадрат матрицаның анықтауышын
есептейтін DETER процедурасы анықталады. 12-ші жолда PROCEDURE өзекті
сөзінен кейін DETER процедурасының аты жазылған және жай жақшаның ішінде А
және D формалды параметрлері нүкте үтір арқылы бөлініп берілген. А формалды
параметрі ТМАС типті обьект ретінде анықталған және параметр-мән болып
табылады (8-ші тарауды қараңыз). D формалды параметрі нақты типті
скалярлық параметр-айнымалы болып табылады (оның алдында резервтелінген VAR
сөзі тұрғандықтан).
13- ші жолда 10 және 20 белгілері анықталған. Келесі жолдарда, яғни
айнымалыларды хабарлау бөлімінде IL, JL, KL және С жергілікті айнымалылары
анықталтан. DETER процедурасының атқару бөлімі BEGIN операторынан басталып
43-ші жолдағы END операторымен аяқталады. 18-ші жолда 19-38 жолдар
аралығында орналасқан құрамды операторды N-1 рет орындайтын IL циклдік
айнымалысы бар цикл операторы жазылған (BEGIN және END операторларының
ортасында). ... жалғасы
ТАҚЫРЫБЫ: ПАСКАЛЬ БАҒДАРЛАМАЛАУ ТІЛІНІҢ ЭЛЕМЕНТТЕРІ
Дайындаған : Ахметова Айымгүл
ЖОСПАР
I КІРІСПЕ
II ПАСКАЛЬ БАҒДАРЛАМАЛАУ ТІЛІНІҢ ЭЛЕМЕНТТЕРІ
§ 1. ПРОГРАММАЛАУДЫҢ ЭЛЕМЕНТТЕРІ
§ 2. ПАСКАЛЬ ОРТАСЫНДА ЖҰМЫС ІСТЕУ
III ҚОРЫТЫНДЫ
IV ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР
КІРІСПЕ
XXI-ғасырды – ақпараттық технологиялар дәуірі деп атайды. Қазіргі
кездегі ғалым немесе кез-келген маман қандай да бір мәселені (есепті шешу),
үшін ол ақпаратты дұрыс өңдей білу керек. Сондықтан ол ақпараттану
(информатика) білімінсіз бұл мәселені шеше алмайды. ЭЕМ-ді қолдануды, бұл
өңдеудің белгілі бір бөлігін, адамның қатысуынсыз жұмыс істейтін және
жылдамдығы адамның жылдамдығынан бірнеше миллион есе көп, автоматты
құрылғыларға аударуға болады.
ЭЕМ-дер адам қызметінің барлық салаларына еніп жатыр, сондықтан онымен
жұмыс істеуге ұмтылған адамдар үзілізсіз артуда. Есептеу машиналарын
көпшіліктің жаппай пайдалануында, түрлі программалау тілдерінің алатын
орнының мағынасы үлкен. ЭЕМ-мен қатынас тілі түсінікті және қарапайым
болған сайын, адам мен ЭЕМ-нің өзара байланысы тиімді болады. Программалау
дағдыларын бала кезінен қалыптастыруға болатын, миллиондаған қолданушыға
түсінікті болатын программалау тілдері ерекше қызығушылық танытты.
ЭЕМ-нің дамуымен қатар оған қажетті базалық программалық құралдар да
дамып отырды. Бірінші кезекте бұл программалау тілдеріне қатысты, олардың
көмегімен адамдар есептерді ЭЕМ-де шешу үшін кодтауды үйренді. Оларды да
бірнеше кезеңге бөлуге болады.
Бірнеше кезең – 50 жылдардың соңына қарай программалау құрылымы, дәл
кодтау тәсілі арқылы ұзын командалар тізбегі екілік, сегіздік және
оналтылық сандар қолданылды. Бұл қызметтің программалаудан айырмашылығы
кодтау деп аталды да, оның алдына – алгоритмді құрастыру міндеті қойылды.
Екінші кезең – оларға Ассемблер тілдері жатады, олармен жұмыс істеу
машиналық тілге қарағанда жеңілірек болды. Оларда нақтылы комендаларға
арнайы сақтау әдістері қолданылды.
Үлкен көлемді, жадылы, жылдам есептегіш машиналарының пайда болуы,
кодтау қиындықтарын соншама өсірді, олармен адамдардың жұмыс істеуі тиімсіз
бола бастады.
Бір машинадан, екінші машинаға программаны қайта кодтау қажеттілігі
кезінде алгоритмдердің көбінесе аударуға келмейтіні бақыланды, сондықтан
нақтылы машиналарға аппараттық есеп жүргізуге қажеттілік туды.
Бөтен программалардың құрылу принципін түсіну жалпы тәжірибеде мүмкін
болмады.
Машина тілінде жазылған программаларда, қажет емес ақпараттардың
есебінен құралатын қателіктер түзелетін болған. Нәтижеде программаларды
түрлі техникалық жөндеуге келмейтін естен тандырып, түрлі қателіктермен
толтырады, соның салдарынан оларды ашу мүмкін болмады. Болашақ студент оның
себебін іздеумен аптплап отыратын болған, ал программа іс жүзінде дұрыс
жазылған не себепті жұмыс істемейді.
Бұл қиындықтан шығудың жолы “жоғарғы деңгейлі” программалау тілдерінің
жасалуына себепші болды.
Үшінші кезең – тілдердің ең “көлемді” кезеңі. Ол 1955 жылы Фортран
(FORmulf TRANslator – формулалар аудармашысы) тілінің пайда болуынан
басталады. Бұл тілдің пайдаланылуы осы күнге дейін жалғасып келеді.
1970 жылы Никлаус Вирт PASCAL (Паскаль) тілін жасады. Бұл тіл, әсіресе
қазіргі кездегі қолданыстағы түрі, жан-жақты жетілген құралдармен
жабдықталған болып саналады.
§ 1. ПРОГРАММАЛАУДЫҢ ЭЛЕМЕНТТЕРІ
Паскаль ASCII кодының төмендегідей символдар қорының жиыншасын
қолданады:
• латын алфавитінің А-дан Z-ке дейінгі және а-дан z-ке дейінгі әріптері;
• 0-ден 9-ға дейінгі араб сандары;
• оналтылық сандар - 0-ден 9-ға дейінгі араб сандары және А-дан F-ке
дейінгі және а-дан f-ке дейінгі әріптер;
• арнайы символдар - + -* = [].,():;^{}S # @;
• құрамды символдар - : = = = .. (* *) (. .);
• жол соңы және күймешені (курсорды) қайтару символдарын қоса алғандағы
ASCII кодының барлық басқарушы символдары және бос орын.
Ескерту: (* *) символдар жұбы { } жүйелік жақшаларға пара-пар; (. .)
символдар жұбы [ ] тік жақшаларға пара-пар.
Келесі сөздер Паскаль тілінде резервтелінген болып табылады:
absolute, and, assembler, asm, array, begin, case, const, constructor,
destructor, div, do, downto, else, end, external, far,file, for, forward,
function, goto, if, implementation, in, inline, interface, interrupt,
label, mod, near, nil, not, object, of, or, packed, private, procedure,
program, record, repeat, set, shl, shr, string, then, to, type, unit,
until, uses, var, virtual, while, with, xor.
Идентификаторлар
Идентификаторлар тұрақтылардың, типтердің, айнымалылардың,
процедуралардың, модульдердің, программалардың және жазбалардағы өрістердің
аттары ретінде пайдаланылады. Идентификаторлардың жүру аймағында оның
мағынасы бір мәнді болуы қажет. Идентификаторлардың аты ретінде
резервтелінген сөздерді пайдалануға тиым салынады.
Паскальда идентификаторларды құрудың бірнеше ережелері бар. Олардың
қысқаша сипаттамалары мынандай:
• Барлық идентификаторлар әріптен немесе сызу белгісінен басталуы қажет
және оның құрамында бос орын болмауы керек. Келесі символдар ретінде әріп,
сызу белгісі, сан болуы мүмкін. Басқа символдарды пайдалануға болмайды;
• Идентификаторлардың ұзындықтары әр түрлі болуы мүмкін, бірақ олардың
алғашкы 63-і ғана пайдаланылады;
• Идентификаторлар пернеліктің бас және кіші әріптерін айырмайды, яғни
АВВА идентификаторы abba идентификаторына пара-пар.
Дұрыс идентификаторлардың мысалдары; А1, PRIMER, В7А, FLAG.
Дұрыс емес идентификаторлардың мысалдары:
1А - идентификатор саннан басталып түр;
А+1 - арнайы "+" символы пайдаланылып тұр.
Программаның құрылымы
Паскаль тілінде программалар тақырыптан, блоктан және . (нүкте)
белгісінен тұрады.
Программаның тақырыбы программа атынан және параметрлер тізімінен
тұрады:
Program программа - аты (идф1, идф2,...,идфN);
мұндағы идф1, идф2, ..., идфN - программаның сыртқы ортамен байланысын
жүзеге асыруға көмектесетін файлдардың идентификаторлары; идф1 және идф2
ретінде көбінесе стандартты енгізу (INPUT) және шығару (OUTPUT) файлдары
көрсетіледі. Әдетте параметрлер көрсетілмейді.
Паскальда блок екі бөлімнен тұрады: сипаттау және орындалу. Әрбір блок
процедураның немесе функцияның хабарлануының бөлігі не болмаса программаның
немесе модульдің бөлігі болады. Хабарлау бөлімінде хабарланған барлык
идентификаторлар мен белгілер блок ушін жергілікті болып табылады.
Орындалу бөлімі программа операторларын қамтитын құрамды оператордан
тұрады.
Сипаттау бөліміне модульдерді іске қосу, белгілерді, тұрақтыларды,
типтерді, айнымалыларды, процедуралар мен функцияларды сипаттау сияқты
бөлімшелер енеді.
Паскаль тіліндегі программаның жалпы құрылымын келесі түрде көрсетуге
болады:
Program программаның аты (Input, Output);
Uses модульдер;
Label белгілер;
Const тұрақтыларды хабарлау;
Туре деректер типін сипаттау;
Var айнымалыларды хабарлау;
процедураларды (Procedure) және функцияларды (Function) сипаттау.
Begin
программаның денесі
End.
Программада барлық - USES, LABEL, CONST, ТУРЕ, VAR, PROCEDURE және
FUNCTION алты хабарлау бөлімдерінің болуы міндетті емес.
Модульдерді іске қосу бөлімі
Паскаль тілінде модульдер модульді программалаудың негізі болып
табылады. Олар әртүрлі программаларға ендіріле алатын библиотекаларды құру
үшін пайдаланылады. Ал үлкен программалар логикалық байланысқан модульдерге
бөлініп жазыла алады.
USES сөйлемінде программада пайдаланылып отырған барық модульдер
идентификацияланады. Оларға тікелей пайдаланылып отырған модульдер және осы
модульдер пайдаланып отырған модульдер кіреді.
SYSTEM модулі әрқашан автоматты түрде пайдаланылады. SYSTEM барлық
төменгі деңгейді, файлдық енгізушығару, жолдарды өңдеу, жылжымалы үтірлі
операция, жадының динамикалық үлестірілуі және т.б. жүзеге асырады. Паскаль
тілі SYSTEM модулінен басқа PRINTER, DOS және CRT сияқты көптеген
модульдерді жүзеге асырады. Олар автоматты түрде пайдаланылмайды. Қаіжет
болған жағдайда олар USES сөйлеміне міндетті түрде қосылуы керек. Мысалы:
Uses DOS, CRT; {енді DOS және CRT құралдарымен жұмыс істеуге болады}.
Белгілерді сипаттау бөлімі
Программада кез келген оператор белгімен белгіленуі мүмкін. Белгі
ретінде 0-ден 9999-ға дейінгі кез келген санды немесе идентификаторды
қолдануға болады. Бастапқы нөлдер есептелмейді (мысалы 0909 бегісі 909
белгісіне пара-пар). Белгі оператордың алдына қойыльш, одан қос нүктемен
ажыратылады. Белгі көшу (GOTO) операторымен бірге пайдаланылады.
Программада пайдаланылған барлық белгілер LABEL бөлімінде үтір арқылы
бөлініп жазылуы қажет. Мысалы 10, 20 және met белгілері келесі түрде
сипатталады және пайдаланылады:
Label 10, 20, met;
10: оператор
20: оператор
met: оператор
Тұрақтыларды сипаттау бөлімі
Бұл бөлімде тұрақтылардың синонимі ретінде әлдебір идентификаторлар
енгізіледі.
Мысалы:
сonst идк1=тұрақты1; идк2=тұрақты2;...идкN=тұрақтыN
мұндағы ИДКJ-ші тұрақтының идентификаторьн сипаттайды;
ТҰРАҚТЫJ - тұрақты мән немесе тұрақгы өрнек.
Бұл жердегі тұракты өрнек дегеніміз компилятор объекті кодты кұру
(компиляция) кезеңінде есептей алатын өрнек. Тұрақты өрнектің карапайым
түрі - тұрақгы мән.
Әрбір тұрақтыны анықтау үшін қандай да бір тұрақты мәнді белгілейтін
идентификатор еңгізіледі,
Тұрақтыларды анықтау бөлімін пайдалану арқылы программаларда
тұрақтыларды айқын түрде пайдаланбауға болады. Const бөлімінде берілген
тұрақтылардың мәнін программада өзгертуге болмайды.
Тұрақтыларды хабарлауда хабарлауы бар блоктың ішіндегі тұрақтыларды
белгілейтін идентификаторлар болады. Тұрақтының идентификаторы жеке өзінің
хабарлауына енуі мүмкін емес.
Тұрақтыларды хабарлаудың бірнешс мысалдарын көрсетейік;
Const Min=0;
Мах=100;
Rad=(Max-Min) div 2;
ErKod='10';
ErrStr=' Error'+ ErKod;
Тұрақтылар арифметикалық, символдық, жолдық және логикалық болып
бөлінеді.
Арифметикалық тұрақтылар бүтін және нақты болып бөлінеді.
бүтін тұрақтылар
ZAAA...A
түрінде жазылады, мұндағы Z - тұрақгының таңбасы: оң (+), теріс (-) немесе
болмауы мүмкін (өздігінен +), А - 0-ден 9-ға дейінгі сандар. Бутін
тұрактылардың сандық мәндері [-32768. 32767] диапазонында болуы керек.
Мәндері [0, 255 диапазонында жататын бүтін тұрақтыны байттық тұрақгы де
атайды.
Бүгін тұрақтыны оңалтылық түрде көрсетуге болады:
ZSBB...B
мұндағы Z - түрақтының таңбасы: оң (+), теріс (-) немесе болмауы мүмкін
(өздігінен +), $ - санның оңалтылық түрде көрсетілгенінің белгісі, В - 0-
ден 9-ға дейінгі және А-дан Ғ-дейінгі оңалтылық сандар.
Бүтін тұрақтылардың мысалдары: 1, +5, -125, $А4.
Нақты тұрақтылар екі түрде жазылуы мүмкін: ZAA...A.BB...B,
немесе реті көрсетіліп
ZAA...A.BB...B EzCC.C,
мұндағы Z — тұрақгының таңбасы, z - реттің таңбасы: оң (+), теріс (-)
немесе болмауы мүмкін (өздігінен +), А, В, С - 0-ден 9-ға дейінгі сандар.
Нақты тұрақтылардағы Е (экспонента) техникалық белгілеуі "онның дәрежесі"
ретінде оқылады. Егер жазылуда нүкте бар болатын болса, онда оның алдында
және артында ең болмағанда бір-бір саннан болу керек. Реті көрсетілген
нақты тұрақтылар өте үлкен немесе өте кіші сандардың жазылуы ыңғайлы
болу үшін кызмет атқарады.
Нақты тұрақтылардың мысалдары:
- 45.511
7Е-2 "7 көбейтілген 10-ның -2 дәрежесі" =0.07;
12.25Е+6 "12.25 көбейтілген 10-ның 6 дәрежесі " =12250000
Жолдық тұрақты - программаның бір жолына жазылған және тырнақшаға
(апостроф) алынған символдар тізбегі больп табылады. Егер жолдық тұрақгы
бір символдан ғана тұратын болса, онда ол символдық тұрақгы деп аталады.
Апострофтар арасында ешқандай символдары жоқ символдар жолын бос жол деп
атайды. Екі апостроф арасындағы тізбекте кез келген символдар немесе
бос орын бола алады. Басқарушы символдар екі белгінің көмегі арқылы
көрсетіледі. біріншісі - ^, екіншісі - көрінетін символ (Ctrl пернесінің
және көрінетін символдың бір мезгілде басылуы сияқгы). Белгілердің ондық
түрде көрсетілуі # символынан және одан кейін келетін белгінің ондық
кодынан (255-тен аспайтын) тұрады, ал белгілердің оналтылық түрде
көрсетілуі #$ және оналтылық белгілерінен тұрады. Жолдық тұрақтылардың
мысалдары: 'Text', 'A', #61, #$А2, ^G.
Логикалық тұрақтылар "Ақиқат" және "Жалған" деген түсініктерге сәйкес
TRUE және FALSE идентификаторларымен өрнектеледі.
Типтерді сипаттау бөлімі
Программаларда, модульдерде, процедураларда және функцияларда типтерді
хабарлауға арналған бөлім бар.
Айнымалыны хабарлағанда оның типін көрсету қажет. Айнымалының типі
оның қандай мән қабылдай алатынын және оған қандай әрекеттер пайдалануға
болатынын аныктайды. Тип идентификатормен аныкталады.
Идентификаторды типті хабарлаудың сол жағында көрсетеді және ол осы
типті хабарлау кездесетін блок программалар, процедуралар және функциялар)
үшін сол типтің идентификаторы болып анықталады.
Типтердің үлкен үш класы бар:
• жай типтер;
• құрылымды типтер (массивтер, жазбалар, жиындар, файлдар);
• көрсеткіш (указатель) тип.
Типті хабарлау TYPE кілттік сөзінен, сипатталып отырған типтің
идентификаторынан, = (тең) белгісінен, питің анықтамасынан және; (нүктелі
үтір) белгісінен рады.
Мысалы:
Type
Number = Integer;
Color = (Red,Green,Blue);
CharVal = Ord{'A') ... Ord( 'Z') ;
TestIndex = 1...100;
TestValue = -99...99;
TestList = Array [TestIndex] Of TestValue;
TestListPtr = ^TestList;
Date = Record
Year: Integer;
Month: 1 ... 12;
Day: 1 ... 31;
End;
Айнымалыларды хабарлау бөлімі
Жаңа айнымалылар мен олардың типтерін білдіретін идентификаторлар
кестесі айнымалыларды хабарлау болып табылады.
Айнымалыларды хабарлаудың жалпы түрі төмендегідей:
Var идп1, идп2, идпЗ:
идп4, цдп5: тип2;
Мұндағы ИДПJ – ТИП1 немесе ТИП2 жататын J-шы айнымалының
идентификаторы.
Айнымалыға берілетін тип типтерді хабарлау бөліміндегі бұрын анықталған
типтің идентификаторы бола алады. Сондай-ақ бұл жаңадан анықталған тип те
бола алады.
Айнымалыларды хабарлау бөлімінде идентификаторды көрсеткенде, бұл
айнымалы осы хабарлау кездескен блокта анықталған деп саналады және оның
идентификаторы алдыңғы блокқа кіретін блокта қайта анықталмаған болса, онда
оны блоктың кез келген жерінде шақыруға болады.
Қайта анықтау жаңа айнымалыға алдында қолданылған идентификаторды
қолдануды білдіреді, бірақ бұл қолдану алғашқы пайдаланылған айнымалының
мәніне әсер етпейді.
Айнымалыларды хабарлаудың мысалын келтірейік:
Var
X, Y, Z : Real;
I, J, K : Integer;
Digit : 0 ... 9;
Done, Error : Boolean;
Operator : (Plus, Minus, Times);
Matrix : Array [1 ... ..10,1 ... .10] of Real;
Блоктың сыртында хабарланған айнымалылар жалпы деп аталады. Блоктың
ішінде хабарланған айнымалылар жергілікті деп аталады.
Қосалқы программ аларды анықгау және сипаттау
Қосалкы программалар процедуралар және функциялар болып бөлінеді.
Қосалқы программаны анықтау қосалқы программаны шақырғаннан кейін тікелей
орындалатын іс-әрекеттерді анықтайды. Функция үшін нәтиженің типі
қосымша анықталады.
Егер қосалқы программаны шақыру оның жүру аймағында болатындай қосалқы
программалардың анықталуының орналасуы мүмкін болмаса, онда қосалқы
программаның сипатталуы қажет. Сипаттаудың анықтаудан айырмашылығы ол
қосалқы программалардың идентификаторын және параметрлерін көрсету үшін
ғана қызмет атқарады.
Түсініктемелер
Кейде программада айнымалы нені білдіретіндігін, функция немесе оператор
қандай іс-әрекет жасайтыны жайлы еске салатын немесе хабарлайтын ескертулер
қою қажет болады. Бұл ескертулер түсініктемелер деп аталады. Паскальда
программаға қанша болмасын түсініктемелер қоюға болады.
Түсініктемелер сол жақ жүйелік жакшадан '{' (немесе '(*'
комбинациясынан) басталады және оң жақ жүйелік жақшамен '}' (немесе '*)'
комбинациясымен) аякталады. ' (*'-дан басталған түсініктеме барлық жүйелік
жақшаларды ескермейді және керісінше.
Ашылған жүйелік '{' жақшадан кейін $ символы кездесетін түсініктеме
копмилятордың директивасы болып табылады.
Түсініктемелердің мысалдары:
{Шешу әдісі}
(*Циклдің басы*)
{$0+} немесе {$О-} - оверлейлік кодты генерациялауға мүмкіндік
береді немесе сол
мүмкіндікті алып тастайды.
Түсініктеме бірнеше жолдан тұра алады:
{Бұл бірнеше жолдан тұратын түсініктеменің мысалы}.
Программаның мысалы
KRAMER программасын қарастырайық. Бұл программада DETER квадратты
матрицаның анықтауышын есептеу процедурасының көмегімен сызықты алгебралық
теңдеулер жүйесінің шешімі табылады.
{Ах=Ь теңдеулер жүйесін Крамер әдісімен шешу программасы }
Program Kramer;
Const N=5;
Type
Tmac = Array[1..N,1..N] Of Real;
Tvec = Array[1..N] Of Real;
Var
A,R : Tmac;
В,X : Tvec;
DT, S : Real;
I,J,К : Integer;
Procedure Deter{A: Tmac; Var D: Real);
Label 10,20;
Var
IL,JL,KL : Integer;
С : Real;
Begin
For IL:=1 To N-l Do
Begin
If A[IL,IL]=0.0 Then
Begin
For JL:=IL To N Do
If A[JL,IL]0.0 Then Goto 10;
D:=0.0; Goto 20;
10: For KL:=IL To N Do
Begin
C:=A[IL,KL];
A[IL,KL]:=A[JL,KL];
A[JL,KL]:=C;
End;
End;
For JL:=IL+1 To N Do
Begin
C:=A[JL,IL]A[IL,IL];
For KL:=IL To N Do
A[JL,KL]:=A[JL,KL]-C*A[IL,KL];
End;
End;
D:=1.0;
For IL:=1 To N Do
D:=D*A[IL, IL];
20:;
End; {Deter процедурасының соңы}
Begin
{ A массивінің элементтерін енгізу }
For I:=1 To N Do
For J:=l To N Do
Read(A[I,J]);
{ В векторының элементтерін енгізу }
For I:=1 To N Do
Read(B[I]);
For I:=l To N Do
For J:=l To N Do
R[I,J]:=A[I,J];
Deter(R,DT);
if DT=0.0 Then Writeln (‘Теңдеулер жүйесінің шешімі жоқ’)
Else
Begin
For I:=l To N Do
Begin
For J:=l To N Do
For K:=l To N Do
R[J,K] :=A[J,K];
For J:=l To N Do
R[I,J]:=B[j};
Deter(R,S);
X[I]:=SDT;
End;
Writeln ('шешімі');
For I:=1 To N Do
Writeln(X[I]);
Writeln;
End;
End.
Программа түсініктемеден басталады. Екінші жолда Program өзекті
сөзінен кейін KRAMER программасының аты жазылған. Келесі жолда N
идентификаторы 5 тұрақты санын сипаттап тұр. Мұнда сызықты алгебралық
теңдеулер жүйесінің реті белгіленіп тұр. Шешілгелі отырған теңдеулер
жүйесінің ретін өзгерту үшін (мысалы, үшінші ретті теңдеулер жүйесі) CONST
N=3; операторын жазу қажет.
Келесі үш жолда деректердің жаңа типтері енгізілген: ТМАС
идентификаторы нақты сандардың N*N матрицасын білдіретін объектілерді
сипаттайды; TVEС идентификаторлары нақты сандардан тұратын N өлшемді
векторларды білдіретін объектілерді сипаттайды.
Программаның 8-ші және 11-ші жолдар аралығында А, R, В, X, DT, S, I,
J, К айнымалылары келесідегідей анықталады: А және R идентификаторлары N
өлшемді ТМАС типті квадраттық матрицаларды анықтайды; В және X
идентификаторлары N өлшемді TVEС типті векторларды анықтайды; DT және S
идентификаторлары нақты типті скалярлық айнымалыларды анықтайды (REAL); I,
J және К идентификаторлары бүтін типті скаляр айнымалыларды анықтайды
(INTEGER).
12-ші жолдан бастап 43 -ші жолға дейін квадрат матрицаның анықтауышын
есептейтін DETER процедурасы анықталады. 12-ші жолда PROCEDURE өзекті
сөзінен кейін DETER процедурасының аты жазылған және жай жақшаның ішінде А
және D формалды параметрлері нүкте үтір арқылы бөлініп берілген. А формалды
параметрі ТМАС типті обьект ретінде анықталған және параметр-мән болып
табылады (8-ші тарауды қараңыз). D формалды параметрі нақты типті
скалярлық параметр-айнымалы болып табылады (оның алдында резервтелінген VAR
сөзі тұрғандықтан).
13- ші жолда 10 және 20 белгілері анықталған. Келесі жолдарда, яғни
айнымалыларды хабарлау бөлімінде IL, JL, KL және С жергілікті айнымалылары
анықталтан. DETER процедурасының атқару бөлімі BEGIN операторынан басталып
43-ші жолдағы END операторымен аяқталады. 18-ші жолда 19-38 жолдар
аралығында орналасқан құрамды операторды N-1 рет орындайтын IL циклдік
айнымалысы бар цикл операторы жазылған (BEGIN және END операторларының
ортасында). ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz