Оқулық Қазақстан Республикасы Білім және ғылым министрлігі бекіткен Алматы, 2011



Pdf көрінісі
бет116/121
Дата31.08.2022
өлшемі2,81 Mb.
#38343
түріОқулық
1   ...   113   114   115   116   117   118   119   120   121
ij
, i, j=1…n шамасының мәндерін, есепті 
шешу барысында X
ij
=F(i, j) формуласымен енгізілген X
ij
, i, j=1…n торында 
есептеу талап етілсе, онда келесі қадамдар тізбегін орындау керек: 
1. i, j=1…n нүктелерінен тұратын облысты сипаттау. 
2. Осы облыста Х және У шамаларын сипаттау. 
3. Осы облыста X
ij
=F(i, j) торының және Y
ij
=G(X
ij
) мәндерін есептеу 
ережесін беру. 
НОРМА тілінде облыстарды айқын сипаттаумен қатар, шартты 
облыстарды беру мүмкіндігі де қарастырылған. Индекстік кеңістік 
нүктелерінің шартты облысқа кіруі немесе кірмеуі, қандай да бір шарттың 
орындалуы немесе орындалмауына байланысты анықталады. Шартты 
облысты беру идеясы қарапайым. Ертерек анықталған D облысы екі 
қиылыспайтын D
1
және D
2
ішкі облыстарға бӛлінеді. Бірінші ішкі облыс 
берілген шарт ИСТИНА мәнін қабылдайтын D облысының нүктелерінен, ал 
екінші ішкі облыс берілген шарт ЛОЖЬ мәнін қабылдайтын нүктелерден 
тұрады. Square облысының алдыңғы сипаттамасын алып, соның негізінде 
шартты облыстарды берейік: 
Square1, Square2: Square/x[k,1]-y[k,1]Берілген сипаттама бастапқы облысты Square екі қиылыспайтын 
Square1 
және Square2 ішкі облыстарға бӛлуді береді, және 


203 
Square1∩Square2=Ø, 
ал Square1USquare2=Square. Бірінші 
Square1 
ішкі облысы, x[k,1]-y[k,1]қабылдайтын Square облысының нүктелерінен тұрады, ал Square2 ішкі 
облысы, ЛОЖЬ мәнін қабылдайтын нүктелерден тұрады. 
НОРМА тілінде шамалардың екі класы анықталған: скаляр шамалар 
және облыстағы шамалар. Сипаттама ағымды бӛлімде әрбір шамаға сәйкес 
бірегей ат қояды, сонымен қатар шаманың типін береді: REAL, INTEGER 
немесе DOUBLE. Скаляр шаманы сипаттау, мысалы, келесі түрде болуы 
мүмкін: 
VARIABLE k1,k2 INTEGER 
VARIABLE pi DOUBLE 
Әрбір 
облыстағы шамалар сипаттамада кӛрсетілген облыспен 
байланыстырылады. Бұл облыс, берілген шамаға қатынас кезінде индексті 
ӛрнектерде пайдаланылуы мүмкін индекс аттарын анықтайды. Индексті 
ӛрнектерді кӛрсету реті маңызды емес. Облысты сипаттау кезінде 
енгізілетіндіктен, индекстер үшін арнайы сипаттау талап етілмейді.
Тағы да Square облысының алдыңғы берілген сипаттамасын 
пайдаланайық және соның негізінде облыстағы шамаларды енгізейік: 
Square: (DirK:(k=1..15); Dirl: (l=1..9)) 
VARIABLE Xsum, Y DEFINED ON Square 
OneDimK DEFINED ON DirK, OneDimL DEFINED ON DirL 
Келтірілген сипаттаулар 
Square 
облысында Xsum және Y 
шамаларын анықтайды. Индексті ӛрнектерде бұл екі шама да k және l 
индекстеріне ие болуы мүмкін. OneDimK және OneDimL шамалары DirK 
және DirL облыстарында анықталған, сондықтан олар индексті ӛрнектерде 
сәйкесінше k және l индекстеріне ие болулары мүмкін. 
Облысты сипаттау кезінде индексті кеңістік бағыттарының реті 
бекітілмегендіктен, 
Y[k-1,l+1] 
және 
Y[l+1,k-1] 
қатынастары 
эквивалентті. Егер бір индексті бағытты басқасымен байданыстыру қажет 
болса, онда оны айқын түрде кӛрсету керек. Мысалы, Y матрицасының 
диагоналдық элементтерін Y[k,l=k] немес жай Y[l=k] деп анықтауға 
болады. 
НОРМА тілінде операторлардың үш түрі ғана анықталған: скалярлық 
оператор, ASSUME операторы және бӛлімді шақыру.
Скалярлық оператор скалярлардың арифметикалық мәндерін есептеуге 
арналған. Жалпы алғанда бұл оператор дәстүрлі бағдарламалау тілдеріндегі 
қабылдау операторының аналогы десе болады, сол жағында скаляр аты 
кӛрсетіледі, ал оң жағында – скалярлық арифметикалық ӛрнек. Мысалы: 


204 
d = 1997 
c = b+e+SQRT(d+4) 
Скалярлық операторда қайта меншіктеу рұқсат етілмейді, сондықтан
k=k-1 түріндегі оператор анықтама бойынша дұрыс емес дептесептеледі. 
ASSUME операторы облыста анықталған шамалардың арифметикалық 
мәндерін есептеу үшін пайдаланылады. Бұл оператордың семантикасы келесі 
түрде анықталады. Шартты түрде жазылған қатынасты қарастырайық: 
FOR D(i


Достарыңызбен бөлісу:
1   ...   113   114   115   116   117   118   119   120   121




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет