Республикасы білім жəне ғылым министрлігі



жүктеу 1,43 Mb.
Pdf просмотр
бет26/28
Дата04.01.2020
өлшемі1,43 Mb.
#25855
1   ...   20   21   22   23   24   25   26   27   28

 

65

searchfile(PathList,  Name,  FoundName)        %  (i,  i,  o)Егер  дискке  түбірде 



autoexec.bat орналасқан :, C тең FoundName орнайды : \AUTOEXEC.BAT. 

Файлдың    аты  алмастырулар  нышандары  бола  алады.  Бұл  жағдайда 

алмастырулар  нышандары  болатын  файлдан  толық  атымен  сабақтас 

FoundName  болады,  жəне  төменде  суреттеп  айтылған  тізбелер  іздестіру 

предикаттар үшін дəлелді сапада қолданылуы  бұдан əрі мүмкін болу керек. 

Егер  алдыңғы  мысалдың  файлдың  атының  тап  қалған  сияқты  *.bat  орнына 

мысалы autoexec.bat, сабақтас FoundName көрсетеді : \ *.ВАТ. 

 

Предикат deletefile /1 



Предикат  deletefile  оның  берілген  аргументтері  мен  формалары  мен 

берілген файлдарфн өшіріп тастайды. deletefile(OSFileName)    % (1) 

Егер  файл  алып  тастай  алмаса  предикат  қатені  береді.  OSFileName 

біржолдық  нышандар бола алмайды. 

 

Предикат renamefile/1 



 

Предикат  renamefile  NewOSFileName  атынан  OldOSFileName    атын 

өзгертіп жатыр. Ол өз формасын алады. 

renamefile(OldOSFileName,   NewOSFileName)  %   (i,   i) 

 

Егер  NewOSFileName  атымен  файл  болмаса  предикат  табысты 



renamefile болып қалады, жəне екеуіде файлдық өзгерген аттармен сақталып 

қалады. Жағымсыз жағдайда қате берған болады. 

 

Предикат disk/1 



 

Предикат  ағымдағы  диск  өзгеруі  үшін  disk  қолданып  жатыр  немесе 

каталогта/подкаталота өз  қалыпын алады : 

disk(Path)  %   (i),  (о) 

 

Еркін  айнымалы  шақыруда  параметрге  сапада,  ағымдағы  тізбеге  disk 



қайтарылады.  Бұл  дискте  қазіргі  ағымдағы  тізбесіз  өзгеріссіз  басқа  дискке 

ауыстырып қосу үшін DOS-Бағдарлаған болжамдарда D қолданылады:. D бұл 

жерде – құрылым таңбалаушы əріп. 

 

Предикат copyfile/2 



 

Предикатта  файлдың  көшірмесін  алу  үшін  copyfile  қолданылады.  Ол 

екі параметрді қабылдайды :.copyfile(SourceName, DestinationName) 

%      (i, 

i) 

 

Файлдардың  аттары  толық  немесе  ішінара  беріле  алады,  жəне  бұл 



файлдарға  жолдар  дисктер  жəне  тізбелерді  қоса.  Қайта  құрылмалы 

нышандарға тыйым салынған. Көшіріп алған атрибуттарын жəне құқықтарын 

бастапқы файл алады. 

 

2.10. Зертханлық жұмыс  10.Visual- ға кiрiспе iшкдеректер базасы



 

66

 



(internal  fact  databases  )  iшкi  деректер  базасы  сiз  оны  орындалуы  

барысында  Prologты  сiздiң  Visualдар  тiлiндегi  программасынан  уақытында 

тiкелей  толықсытып  алып  тастай  алатын  айғақтардан  тұрады.  Сiз 

бағдарламаның  factsтың  бөлiмiндегi  iшкi  деректер  қорын  жəне  predicatesтiң 

бөлiм  суреттеп  айтылған  предикаттарды  қолданылатын  осы  сияқты  бұл 

предикаттарды қолдануға суреттейтiн предикаттар жариялай аласыз. 

Деректер қорына жаңа айғақтарының қосымшалары үшiн Visual Prolog 

assert,  asserta,  assertzдың  предикаттарын  қолданылады,  retract  жəне 

retractallдiң  предикаттары  қазiргi  айғақтарды  алып  тастауы  үшiн  қызмет 

көрсетедi. Сiз  деректер базасындағы мазмұнын, сначасы айғақ (немесе бөп-

бөлiк айғақ) бұл айғақтың жаңа болжамын сонан соң қойылып алып тасталып 

өзгерте  аласыз.  Consult/1  жəне  consult/2  предикаттар  файлдан  айғақтары 

оқиды  жəне  олардың  iшкi  деректер  қор,  a  save/1  жəне  save/2лерiне 

толықсытады файлдағы iшiндегi iшкi деректер базаларын сақтайды. 

Visual  Prolog  деректер  қорына,  кəдiмгi  предикат  с  тəуелдi  болып 

фактiлердi түсiндiредi. Iшкi деректер базасының предикаттарының айғақтары 

оңай  өзгертуге  болатын  кестеде  максимал  жылдамдығының  табысы  үшiн 

сонда кəдiмгi предикаттар екiлiк кодтарға құрастырады сақталады. 

Iшкi  деректер  базасының  хабарлауы(бұл  əлдеқашанғы  databaseның 

сөзiнiң  синонимы)  facts  маңызды  сөз  factsтың  бөлiмдi  тануын  басты 

анықтайды. Facts бөлiм тиiстi iшкi деректер база суреттейтiн предикаттарды  

тiзбектен  тұрады.  Орындаулар  уақытында  assertaлары  предикаттары  арқылы 

жəне  assertz  деректер  базасына  (бiрақ  ереже  емес)  айғақтар  толықсытуға 

болады. Немесе, сiз дисктегi файлдан толықсытылатын айғақтары consultтың 

үйреншiктi  предикаты  шақырып  ала  аласыз.  Facts  бөлiм  ғибраттанушыда 

көрiне алады 

 

domainsname,  address  =  stringage  =  integergender  =  male  femalefacts(name, 



address, age, gender) person 

predicates(name, address, age) male  

(name, address, age) female  

(name, age, gender) child 

clauses(Name, Address, Age) male:- 

(Name, Address, Age, male) person. 

 

Сiз мысал бұл (male, female, child) басқа предикаттарды қолданылатын 



осы  сияқтымен  person  предикатты  пайдалана  аласыз.  Сiз  бағдарлама 

personның  предикаты  үшiн  айғақтар  жұмыс  уақытында  толықсытып  алып 

тастай алатын жалғыз айырмашылық. 

Айғақтардың  бөлiм  жариялалған  предикаттарға  келесi  екi  шектеу  атап  өту 

керек: 



 



тек  қана  айғақтар  деректер  қорына  толықсытуға  рұқсат  етiледi,  бiрақ 

ереже емес;  

 

базасының айғақтары еркiн айнымалы бола алмайды. 



 


 

67

Factsтың  бiрнеше  бөлiмдерiнiң  бар  болуына  рұқсат  етiледi,  бiрақ  ол  үшiн 



factsтың əрбiр бөлiмiнiң аты анық көрсетуi керек. 

(integer ) myFirstRelation  

mySecondRelationfreal, string  

(string ) myThirdRelation  

/* etc. */ 

Mydatabaseның аты бар factsтың бөлiмiнiң сипаттамасы mydatabaseның 

аты бар айғақтардың деректер қорын құрады. Егер сiз iшкi деректер базасына 

ат  қоймасаңыз,  онда  ол  үндемеу  бойыншаға  dbasedomның  үйреншiктi  атын 

тағайындайды.  Ол  егер  тек  қана  жобаның  бiр  бөлiгi  сияқты  жарияламайтын 

тамырлы  модулдың  единстiнен  тұрады  бағдарлама  айғақтардың  жергiлiктi 

атаусыз бөлiмдерi бола алатынын көңiл аударыңыз. 

Деректер  базасының  предикаттарының  аттары  сирек  кездесетiн 

(бастапқы  файл  )  модул  болуы  керек;  facts  екi  əр  түрлi  тараулардаларға 

дикатов  бiрдей  аттар  өте  қолдануға  болмайды.  Дəл  осылай  facts  жəне 

predicatesтiң  тараулардасына  предикаттарының  бiрдей  аттары  қолдануға 

болмайды. Тарауларданың жергiлiктi facts нақтылы предикаттарының аттары 

дегенмен,  олар  жариялайтын,  жəне  предикатов/фактовтың  жергiлiктi 

аттарымен  қақтықпайды  басқа  модул  жариялалған  модул  үшiн  жергiлiктi 

болып табылады. 

 

Ішкдеректер базаларын қолдану 

Visual  Prolog  реляциялық  деректер  қорын  ұсынатындығы  бұл  фак  тов 

коллекцияны,  сiз  iшкi  деректер  базаларына  сұрау  салулары  ол  қуатты  тiл 

ретiнде  қолдана  аласыз.  Болғанша,  Visual  Prolog-шi  бейiмдеудi  алгоритм 

белгiлi  дəлелдер  үшiн  дұрыс  мəндерi  бар  айғақтарды  автоматты  таңдайды 

жəне қайтарумен iздестiрудi оның алгоритмы вест дəлелдерiне неиздiң мəнiн 

тағайындайды тап қалған сұрау салу үшiн барлық шешiмдi бередi. 



 

Iшкдеректер базасына рұқсат 

Iшкi  деректер  база  тəуелдi  предикаттар  тура  түсiнiктi,  сонымен  қатар 

басқа  предикаттар.  Жалғыз  көрнектi  айырмашылық  мұндай  предикаттардың 

хабарлауы  predicatesтiң  бөлiмi  орынына  factsтың  бөлiмiнде  орналастырған 

тұрады. Ғибраттанушыда: 

 

domains 



name = string 

sex = char 

facts 

person(name, sex) 



clauses 

person("Helen", 'F').  

person("Maggie", 'F').  

person("Suzanne", 'F').  

person("Per", 'M'). 



жүктеу 1,43 Mb.

Достарыңызбен бөлісу:
1   ...   20   21   22   23   24   25   26   27   28




©g.engime.org 2025
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау