Жалпы білім беру мектептерінде математикалық логика элементтерінің оқытылуы және турбо пролог логикалық программалау тілі

Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 4
1.тарау. Жалпы білім беру мектептерінде математикалық логика элементтерінің оқытылуы және Турбо Пролог логикалық программалау тілі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 5
• Мектеп информатика курсындағы математикалық логика элементтері ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 5
• Математикалық логика элементтері мен логикалық программалауды мектепте оқыту қажеттілігі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 13
• Турбо Пролог логикалық программалау тілі ... ... ... ... ... ... ... ... ... 34
2.тарау. Турбо Пролог логикалық программалау тілінің интерактивті электрондық оқулығын жасау әдісі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 50
2.1. Турбо Пролог логикалық программалау тілінің зертханалық жұмыстары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 50
2.2. Интерактивті электрондық оқулықты жасау және пайдалану әдісі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 70

Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 91

Пайдаланған әдебиеттер тізімі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 92

Қосымша ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 93
Информатика іргелі ғылым болып табылады, сондықтан да, оның негіздерін мектеп қабырғасынан бастап үйрену керек. Біздің ойымызша, мектептегі оқыту келесі үш кең қамтылған бағыт бойынша жүргізілуі қажет:
- информатиканың теориялық негіздері;
- модельдеу, алгоритмдеу, программалау;
- ақпараттық технологиялар.
Заманауи мектепте оқытуды дифференциялау әртүрлі бағыттағы мамандандырылған сыныптарды ұйымдастырудан тұрады. Ең көп қолданылатыны сыныптарды негізгі, техникалық және гуманитарлық деп бөлу.
Оқушы қазіргі таңда маңызды (технологиялардың даму қарқыны айтарлықтай жылдам жүріп жатқандығын ескере отырып) және бірнеше жыл1 алға компьютерлік сауаттылық элементтерімен таныстырып, дайын программалық өнімдерді пайдалануды үйрету керек (егер интерфейс оңтайлы болса, бұл да аса қиындық туғыза қоймайды). Енді сұрақ туындайды: қандайма болмасын программалау тілін әр адамның білуі міндетті ме. Біздің ойымызша, мектепте оқушыларды программалаудың қандайма тілін үйрету керек, мүмкіндік болса, тіпті, бір емес екі тілді қатарынан оқыту қажет. Мүмкін үміткерлерді қарастырайық: императивті программалау тілі (Паскаль), екінші тіл ретінде декларативтік логикалық программалау тілі – Прологты қарастыруға болады. Әр оқушыға программалауды үйретуді мақсат тұтып отырған жоқпыз, оның үстінде екі бірдей тілде. Ұсынатынымыз: программалау тілдерін белгілі бір оқыту құралы ретінде пайдалану. Мәселен, императивті программалау тілі алгоритм ұғымымен, құрылымдаумен таныстырып, негізгі тапсырманы бірнеше қосалқы тапсырмаларға бөлуге т.с.с. үйретсе, Пролог тілі көмегімен оқушыларды математика, физика, химия және басқа да пәндерді оқуға пайдасы зор нысанды логикаға баулуға болады.
Зерттеудің пәні педагогикалық жоғары оқу орындарындарында информатика мамандығындағы “Логикалық программалау негіздері” пәні болып табылады.
Зерттеудің мақсаты қазіргі ақпараттық технологияларды қолданып “Компьютер архитектурасы” пәнінің интерактивті электрондық оқулығын жасау.
1. Братко И. Программирование на языке Пролог для искусственного интеллекта. М.: Мир, 1990.-210 с.,ил.
2. Ин Ц., Соломон Д. Использование Турбо-Пролога. М.: Мир, 1993.-260 с.,ил.
3. Клоксин У., Меллиш К. Программирование на языке Рrolog. М.: Мир, 1987.-300 с.,ил.
4. О. Камардинов Жасанды интеллект, сараптаушы жүйелер, Пролог. Оқу құралы. Шымкент 2003
5. Ковальски Р. Логика в решении проблем. М.: Наука, 1990.-182 с.,ил.
6. Логическое программирование /Под ред. В.Н. Агафонова М.: Мир, 1988.-210 с.,ил.
7. Лорьер Ж. Л. Системы искусственного интеллекта. М.: Мир, 1991.-160 с.,ил.
8. Марселлус Д. Программирование экспертных систем на Турбо-Прологе. М.: Финансыи статистика, 1994.-240 с.,ил.
9. Стерлинг Л., Шапиро Э. Искусство программирования на языке Пролог.М.: Мир, 1990.-201 с.,ил.
10. Тей А., Грибомон П., Луи Ж. и др. Логический подход к искусственному интеллекту: от классической логики к логическому программированию. М.: Мир, 1990.-240 с.,ил.
11. Хоггер К. Введение в логическое программирование. М.: Мир 1988.-280 с.,ил.
12. Братко И. Программирование на языке Пролог для искусственного интеллекта. М.: Мир, 1990.
13. Ин Ц., Соломон Д. Использование Турбо-Пролога. М.: Мир, 1993
14. Клоксин У., Меллиш К. Программирование на языке Рrolog. М.: Мир, 1987.
15. Ковальски Р. Логика в решении проблем. М.: Наука, 1990
16. Логическое программирование /Под ред. В.Н. Агафонова М.: Мир,1988
17. Лорьер Ж. Л. Системы искусственного интеллекта. М.: Мир, 1991
18. Марселлус Д. Программирование экспертных систем на Турбо-Прологе. М.: Финансы и статистика, 1994
19. Стерлинг Л., Шапиро Э. Искусство программирования на языке Пролог.М.: Мир, 1990
        
        МАЗМұНЫ
Кіріспе.....................................................................
................................................... 4
1-тарау. ... ... беру ... ... ... ... және ... Пролог логикалық программалау
тілі........................................................................
.................................................... 5
Мектеп ... ... ... ... 5
Математикалық логика элементтері мен логикалық программалауды мектепте
оқыту
қажеттілігі.................................................................
................................... 13
Турбо ... ... ... ... Турбо Пролог логикалық программалау тілінің ... ... ... ... ... ... ... тілінің зертханалық
жұмыстары...................................................................
.................................. 50
2.2. ... ... ... ... және пайдалану
әдісі.......................................................................
................................................ 70
Қорытынды………………………………………………………………........... 91
Пайдаланған ... ... ... ... ... болып табылады, сондықтан да, оның негіздерін
мектеп қабырғасынан бастап үйрену керек. Біздің ойымызша, ... ... үш кең ... ... ... ... ... теориялық негіздері;
модельдеу, алгоритмдеу, программалау;
ақпараттық технологиялар.
Заманауи мектепте оқытуды дифференциялау әртүрлі ... ... ... ... Ең көп ... сыныптарды негізгі,
техникалық және гуманитарлық деп бөлу.
Оқушы қазіргі таңда ... ... даму ... ... ... жатқандығын ескере отырып) және ... жыл1 ... ... ... ... ... ... пайдалануды үйрету керек (егер интерфейс оңтайлы болса, бұл да
аса қиындық туғыза қоймайды). Енді ... ... ... ... ... әр ... ... міндетті ме. Біздің ойымызша, мектепте
оқушыларды программалаудың қандайма тілін ... ... ... ... бір емес екі ... ... ... қажет. Мүмкін үміткерлерді
қарастырайық: императивті программалау тілі ... ... тіл ... логикалық программалау тілі – Прологты қарастыруға болады. Әр
оқушыға программалауды үйретуді мақсат тұтып ... ... оның ... ... ... ... ... тілдерін белгілі бір оқыту
құралы ретінде пайдалану. Мәселен, императивті ... тілі ... ... ... негізгі тапсырманы бірнеше қосалқы
тапсырмаларға бөлуге т.с.с. үйретсе, ... тілі ... ... ... ... және басқа да пәндерді оқуға пайдасы зор нысанды
логикаға баулуға болады.
Зерттеудің пәні педагогикалық жоғары оқу ... ... ... ... ... пәні болып табылады.
Зерттеудің мақсаты қазіргі ақпараттық технологияларды қолданып ... ... ... электрондық оқулығын жасау.
Зерттеудің міндеттері:
педагогикалық жоғары оқу орындарында “Логикалық ... ... ... бағдарламасымен танысу;
пәнге қажетті теориялық және зертханалық жұмыстар дайындау;
интерактивті электрондық оқулығын жасау технологиясын анықтау.
Зерттеудің ғылыми болжамы “Логикалық ... ... ... ... ... оқу ... қолдану барысында
студенттер зертханалық жұмыстарды орындаған кезде, теориялық материалдарды
қарастырғанда білімі мен ойлау қабілеті ... ... ... БЕРУ МЕКТЕПТЕРІНДЕ МАТЕМАТИКАЛЫҚ ЛОГИКА
ЭЛЕМЕНТТЕРІНІҢ ОҚЫТЫЛУЫ МЕН ТУРБО ПРОЛОГ ... ... ... ... ... МАТЕМАТИКАЛЫҚ ЛОГИКА ЭЛЕМЕНТТЕРІ.
"Логика (гректің logic - сөз, ой, ойлау, ... ... ... ... ... заңдылықтары, ойлаудың жалпы
зандылықтары туралы (диалектикалық) ғылымдардың жиынтығы".
Біз әр кез ... ... ... ... ... ... ... немесе былайша айтқанда сол заңдылықтар мен ... ... - ... ... бір ... ... бір пікірді
шығарамыз.
Логика ғылым ретінде өте ... ... ... өте келе ... пәні туралы
түсінік өзгеріп, әр ... ... көз ... ... ... пікірдің дұрыстығына үйрену негізгі бөліктердің бірі ретінде
логиканың жетіктігіне ... ... ... Оның ... ой түйу әдісін
зерттейтін, нақтылы мазмұнынан тыс ... ... ... ... бөлігі формальды логика деген атқа ие болды. Соңғысының
математикада атқарар рөлі зор. Расында да, ... ... ... ... жалпы аксиомалармен постулаттардан дұрыс нәтиже шығаруға
құрылған нақты дәлелдерге ... ... да, ... ... ... әсіресе математиктердің көптеген дұрыс ой түю
жүйелерін ашқандығы тегін емес.
Логикалық ... ... ең ... ежелгі грек философы Аристотель жасап
шығарған. Ол танымдық ойлауды құрылымы мен кұрылысы және жүйесі ... ... ... ... қалаушы деп саналады. Ғылымның
және күнделікті ... әр ... ... нақты мағанадағы түрлі ой-
пікірлер бір құрылымды бір жүйелі болып келуі мүмкін. Формальды ... ... ... оның нақтылы мазмұнына мән бере зерттеп "біз ... ... ... ... ... логикасы көптеген ғасырлар бойы әр түрлі философтармен тұтас
бір философиялық ... ... ... толықтырылып, өзгертіліп,
жетілдіріліп келді.
Бір есеппен алғанда ол математикалық теория ретінде құрылып, осы тұрғыда
математикалық ... ... ... ... математиканың нақтылы тілін
жасай отырып оның логикасы болып табылады.
Логиканы матиматикаландыру ... ... ... жөніндегі
пікірді белгілі неміс математигі және ... Г.В. ... ... болатын. Ол ғылым тарихында логиканы ең алгаш рет алгебралық есептеу
түрінде ұсынушы болып есептеледі. ... де, ... ... ... ... логика Буль еңбектері арқылы XIX ғасырдың ортасында ғана
көпшілікке ... бола ... ... ... ... жөнінде
жазған алғашқы "Логиканың математикалық талдауы" ... ... 1847 ... шыкты. Дәл сол жылы (Бульден сәл ... ... ... ... ... логика жүйесі туралы жұмысын жариялады. 1854
жылы Бульдің "Ойлау заңдылықтарын ... ... ... ... ... ... және ... ізбасарларының еңбектерінде
математикалық логика өзіндік бір ... ... буль ... ... ... логикасы деп өрнектеледі. Буль логикаға қазіргі заман
алгебра әдістерін қолданды. Екінші бір ағылшын ғалымы, ... әрі ... ... Буль ... ... қарапайым, механикалық
ауыстырып қосу арқылы логикалық қорытынды жасауға ... ... ... ... ... Джевонс машинасы Ресейде жасалды).
Ең алдымен кластар алгебрасы, кейіннен пікір алгебрасы деген ағым неміс
математигі Э. ... ... орыс ... П.С. Порецкий (1846-
1907) еңбектерінде дамудың ең жоғаргы деңгейіне жетті. П.С. ... ... 1888 ... Ресейдің Қазан университетінде математикалық логика
тақырыбы бойынша ... ... Оның ... және ... логикалары бойынша
жазған еңбектері "XIX ғасырдагы логика алгебрасы ағымындагы ең ... ие бола ... ... әділ ... ... Алайда, Буль бастап
берген бұл бағыт сол кездегі математика сұраныстарымен тікелей байланыста
бола алмады.
Ұлы орыс ... Н.И. ... ... ... ... емес геометрия жүйесі негізгі ... ... ... ... дүниеге әкелді, ал олар өз кезегінде XIX ғасырдың
өзінде-ақ математикалық ... ... ... алып келді.
Математикалық логика элементтерімен танысу орта мектеп оқушылары үшін ... Бұл ... ... ... жүйесін ерекшелеуге, (бұл
түсінумен еске сақтауды жеңілдетеді) теориялар арасындағы өз ара байланысты
айқындауға ікері және ... ... ... ... ... және ... қажет және жеткілікті жағдайлар)
және т.б. мүмкіндік береді. Матемтикалық логиканың белгілік жазуы ... ... ... ... ал ол өз ... нақтылы ойлауды үйренуге
мүмкіндік береді.
Математикалық логика элементтерін оқыту мәселелерін
математиканы тереңдетіп ... ... ең ... ... ... ... Ол ... оқытудың мәселелік
және іскерлік әдіске негізделген жаңа тұжырымдамасын жасап
шығарды.
Математикалық ... ... ... ... ... бойынша үлкен
жетістіктерге жетті. Бұл саладағы жұмыстар теория тұрғысынан ғана емес,
сонымен бірге техникаға ... ... ... де ... ... ... ... элементтерін енгізу мәселесі логиканы арнайы
және ерекше оқытуда емес, математиканы оқытудың бөлінбес ... ... оның ... арттырып, оқушының логикалық дамуына әсер ете
білетін басты ... ... ... ... ... ... бірақ талайдан бері пікір талас ... де, ... ... ... ... ... шешімін
әлі де тапай келеді. Бұл логиканың математикадан ерекше ... және ... ... ... жаңа ... ... ... тыс білімнің басқа да салаларын қатар оқуды талап ететіндігін
көрсетеді.
Қазіргі кездегі логиканың математикалық әдістермен оқылып отырған ... ... оның ... ... ... ... және тілдің жаңа логикалық объектіге қарай кеңейуіне әкеледі, бұл
кеңейу ой мен тіл әдісінің ... ... ... тигізеді.
Математиканы мектепте оқытатын қазіргі кездегі кейбір жобалар шетелдерде
логика элементтерінің кіріспесі математикалық хабарды ... ... ... ... бір ... деген логикалық символика
кіріспесіне әкеп соғады. Мәселенің осылайша ... мен ... ... ... ... ... алга апаратындыгы екі талай.
Математиканы оқытуға логика элементтерін пайдалану ... ... үш ... ... ... ... логиканың қандай элементтерін оку қажет?
Логика элементтерін, математика ... ... ... және ... ... ... оку ... мектепте қандай жагдайда, қандай деңгейде оқытуға болады?
Бұл мәселелер біздің және ... ... ... ең ... ... ... ... жоғарғы және орта
сыныптарында жүзеге асырылуы ... ... ... курс көлемінде
жоғары сынып окушыларының бір бөлігі арасында логикалық білімді жүйелеу
жүзеге асырылып, ... ... ... ... материалға
байланысты логикалық білімді кеңейту жұмыстары жалғастырылуы қажет.
Математиканы оқыту теориясымен практикасында логиканың рөлін ... ... А.Н. ... ... ... ... ... деген мақаласынан "Мектепте логика атты жеке пән жоқ және
логика әліппесімен танысу көп мөлшерде математика сабағының үстінде жүзеге
асатындықтан пән ... ... өте зор" ... ... ... жөн.
Бұл жерде әңгіме кейбір логикалық түсініктермен белгілерді оқытудың көмекші
құралдары ретінде ... ... ... ... жөнінде.
Математиканы оқыту теориясының негізі деп логиканың маңызын асыра сілтеп
ойлауға болмайды, ... оның ... кем ... да ... ... ... ... есептеуіш машиналардың көмегімен білім ... ... ... ... реформаға сәйкес математиканы
оқытуда логика элементтерінің рөлі арта бастады, өйткені ... және ... ... тарапынан адамға деңгейі жогары, биік талаптар қояды.
Математикалық логика ... оқу, ... ... тән ... ... отырып физика саласында міндетті болып
саналады, бірақ, осы ғылымның негізі жоғары оқу орнының қызметі
болып табылғандықтан, оның математикаға қажеті ... ... ... ... ... ... ... міндетті
болатындай математика ғылымының үлкен саласы болып
саналмайтындықтан информатиканы тереңдетіп ... ... деп ... ... ... ... олардың тіршілігі казіргі кездегі
математика тілінде көрініс ... Бұл ... ... ... ... ... - биология, геология, ... ... және ... ... т.б. ... ... дәлелдеуге үйрету - математикадағы маңызды мәселе. Оқушылардың
дәлелдей білу дағдыларын қалыптастыру, олардың сенімділігін қалыптастырудың
да сенімді жолы ... ... ... ... ... әр ... тәсілдерімен таныстырудың ерекше маңызы бар.
Бұл жағдайды сөзбе-сөз түсінудің қажеті жоқ. Үшінші ... ... ... ... ... миын ... ... Шын мәнінде
жаңалық ашуға түрткі болатын себептер әр түрлі болып ... ... ... ... педагогикалық жағдайда кез-келген затты тыңнан ашса,
алғаш ... ... ... ... Егер 1-ші ... ... екі ... жұбын құрап, бір жиындағы заттар екінші жиынға қарағанда көбірек
деген ... ... онда ол ... ең ... ... ... жұмыс істеген болып шығады.
Әр түрлі ... ... ... ... ... ... ... қозғалысы жөніндегі жалпы шолулар математикалық ... ... ... ... ... ... (МКМО). Ол туралы
Эдинбург(1958), Стокголм(19б2), ... ... ... ... аралық конгресстерінде ЮНЕСКО өзірлеген "Математиканы
орта деңгейде оқытуға ... жаңа ... атты ... ... еңбектерде айтылған.
Осы материалдардың барлығын қарастыра отырып, реформаның көп ... ... ... орта ... ... төмендегідей төрт
саласын ұсынатындығын байқауға болады. Олар:
элементарлы жиындар теориясы;
математикалық логикаға кіріспе;
қазіргі кездегі алгебрадан түсініктер, атап айтқанда, ... ... ... ... ... ... ... жоғарыдағы аталған мәселелердің барлығын
мектеп бағдарламасына енгізу мүмкін еместігі айдан анық, бұл ... ... ... күндері біздің еліміздің және шетелдердің әр жерлерінде жалпы пікір
таластан жоба ... ... ... ... ... ... ... логика мен логикалық программалау арасындағы өзара байланыс
Математикалық логика - оның әдістерін кеңінен ... ... ... орай ... ... ... бөлігі. ЭЕМ - нің пайда болуына байланысты ол қолданбалы
сипатқа ие бола бастады. Математикалық логиканы ЭЕМ - ... ... ... әр түрлі есептерін орындауда
қолданылуы базистің екілік ... ... ... екі ... және екі ... ... қондырғыларды
пайдалануымен сипатталады.
Формальды немесе математикалық ... ... ... ... ... ... ... қолданылған. Алайда,
математикалық логиканы бағдарламалау тілі ретінде ... ... 1972 ... ... Р. ... ... болатын. Артынша оны Франция,
Шотландия, Португалия, Ресей және тағы басқа ... ... ... ... ... Бұл идея кейінен логикалық бағдарлама деген атқа
ие болды.
Логикалық бағдармалау - компьютер адамға тән іс - әрекет ... ... ... негізделген. Оның шешу үшін қажетті ... ... ... ... ... ... Бұл жиынтық тапсырманың
мағлұматтар қорын құрайды. Егер тапсырманың құрлысы ... ... ... ... ... ... ... кұралса,
мағлұматтар қоры тапсырманы орындауда қолданылады. ... ... ... ... тұжырым - логикалық бағдарламалау деп аталады. Тапсырманың
шешімі - есеп туралы ... ... ... ... ... ... ... жауапты құру мен бағдарламаны орындау процессі
нақтылы ... ... ... ... ... түп тамыры математикалык, логикада
жатыр, мұнда дүние жүзіндегі әр кездегі математиктердің күшімен логикалық
формулаларда ... ... ... ... ... ... осы ... Алэн Колмероэмен оның тобы Марсель-Экс ... ... ... ... ... Бұл бағдарлама қарапайым
тілдегі тексті өңдеу жүйесін құрастыруда ... ... - деп ... ... ... Ковальскийдің интерпретаторы енгізілген болатын
алайда, Пролог практика жүзінде тек 1977-ші жылы Дэвид Уоррен оның ... ... үшін ... түрде жүзеге асуын ойлап шығарған тұсында
ғана іс ... ... ие ... ... кейін Пролог-жүйелері
көптеген машиналарга арналып шығарыла бастады.
Информатика саласында теория ... ... ... ... ... ... тиімді түрде бағдарламалап қоюға мүмкіндік беретін кейбір
кеңейтулері Пролгты ... ... ... ... ... шешімнің мүмкін болатын көп сандарының толып қалуынан сақтайтын қйып
тастау (отсечение) операторы болып табылады.
Қазіргі кезде Пролог тілі ... ... және мини ... де ... жүзеге асырудың көптеген түрлері бар, олардың ішіндегі кең ... ... және ... ... ... ... ... нұсқасынан айырмашылығы: өңдеп тексеру орталығы берген
енгізілген предикаттар жиынымен, ... мен ... ... және
ДЭЕМ аппаратурасының өз-ара әрекеттігімен ерекшеленеді. Сондықтан ... оқу ... ... ... ... ... оның белгілі бір түрде
жүзеге асуын окуға болады.
Пролог тілін қолданатын ... ... ... болып келеді;
- қолданбалы бағдарламаларды тез арада протатиптендіру;
- жасанды интеллект ... ... ... ... ... ... ... бір тілден екінші тілге бағдарлама конверторын, компилятор, ассемблер,
дисассемблер жазу;
- автоматтандырылған жобалар жүйесі (АЖЖ).
Ойлау қабілетін ... ... ... ... ... бермейтіндіктен Прологтың бағдарламаны оқыту кезінде бастапқы тіл
ретінде кеңінен қолданылатындығын да атап кету керек.
Кейінгі кездерде Пролог бағдарламалау тілі кең ... ... бола ... ... мағұлыматтар
корының заңды жалғасы ретінде дедуктивті мағлұматтар қоры пайда
бола бастады. Логиктер мен ... ... ... ... мен ... ... интерпретациялау саласы бойынша әртүрлі зерттеу
жұмыстарын жүргізді. ЭЕМ ... ... ... ... ... ... комитет, Мюнхендегі компьютерлік
информатиканы зерттеу Европалық орталығы, Стокгольмдегі
компьютерлік информатиканың Швед ... ... ... ... ... етіп ... — пікір әдістерін талдауда қолданылатын маңызды құрал
болып табылады. Логика ең алдымен кейбір сілтемелердің ақиқат не
жалғандығын ескермей қорытынды алуға бола ма ... ... Егер ... ... ... ... ... басқа басшылықтардан ерекше айырмашылығы логикалық
клаузальды қалыпқа негізделгенін байқауға болады. Логиканың
клаузальды қалпы стандарт қалыпқа қарағанда әлде қайда
қарапайым болса да дәл ... ... күші бар. ... ... ... алдын ала
пропозицианалды ... ... ақ ... ... ... де болады;
логиканың клаузальды қалпы оның стандартты қалпына ... ... ... ... пайдаланылатын формальды әдістермен көптеген
ұқсастықтары бар.
Логиканың клаузальды қалпы жасанды интеллект пен психология саласында
пайда ... ... ... ... ... анықтауда қолданылады. Бұл
жүмыста есеп редукциясы мен бағдарламалық орындауды эвристикалық іздеуге
арналган шешім моделі ... ... ... және оған ... ... ... пайдалану
теорамаларды компьютер көмегімен автоматты түрде дәлелдеу ... ... ... ... ... ... ережесі және Эрбран мен Правицаның ерте кездердегі зерттеулеріне
негізделген Лавлэндтың ... ... ... ... ... ... табылады. Теоремаларды автоматты түрде дәлелдеу әдісін жүзеге асыруда
тиімді әдістердің бірі — ... ... ... зерттеу жұмыстары.
Мағлүматтар коры - әртүрлі мақсатта қолдануға арналған мағлұматтар жиынтығы
болып ... ... ... ... кейбір фирмалардың жұмысшы
күші жайында немесе банк операциясының кейбір ... не ... ... мәліметтері болуы мүмкін.
Компьютермен аз араласқан көптеген қолданушылар ақпарат алу мақсатында
мағлұматтардың ... ... ... мүмкін. Мұндай жағдайда мағлұматтарды
қарапайым түрде сырттай ұсыну қамтамасыз етілуі керек, ... ол ... ... ішінен ұсынылуға тәуелді болмауы керек. Демек
мағлұмат қорына арналған сұраныс тілі ... ... әрі ... жеңіл
болуы тиіс. Қазіргі кезде мағлүматтардың қатынас ... ... ... бүл ... ... ... ... деп
есептеу дәстүрге айналған.
Мағлұматтардың реляциялық ұсынылуы мәлімет беруден гөрі оларға сұраныстарды
қалыптастыруда жиі ... ... ... ... ... ... ... алгебра қондырғысы қолданылады.
Мәліметтердің реляциялық формасы компьютер мәліметтерін ұсынудың ... ... ... ... Ол ... ... ... қарастыруға болатын кез келген формализммен қатар келе ... ... ... ... ... ... қолдану қызығушылық тудырып
отыр.
Клауз Хорна процедуралық интерпретациясына негізделіп Поолог деп аталған
алғашқы ... ... ... 1972 жылы ... ... - ға арналып Прологта жазылған ... ... ... және ... ... ... Олар ... логикалық бағдарламаларды пайдаудағы тиімділігін дәлелдеді.
Клаузальды қалып логиканың стандартты қалпына ... әлде ... әрі ... ... ... ... формальды
құралдары екеуінің арасында көп ... бар. ... ... ... резолюция зандалақтары ақпаратты өңдеп шешімді іздеудің қарапайым
ережелеріне көбірек ұқсайды.
Логикалық бағдарламалаудың тиімділігі есепті сәтті түрде аксиомалауға ғана
емес ... ... ... ... ... да байланысты.
Сондықтан да бағдарламалау техникасы мен бірге теореманың автоматты ... ... ... өте ... ... әсердің қандай
болғандығына қарамастан логикалық бағдарламалау идеясы ЭЕМ қолданудың ... ... Мүны ... ... ... ... ... дәлелдейді. Символдық логика ЭЕМ-нің ... ... ... ... ... ... қызметін атқарады. Бұл рөлге
бесінші ... ... ... ... ... ... ... жүзінде логикаға деген үлкен қзығушылықты тудырды, алайда
бұл ... ... ... ... ... мен практикасына зор үлес
қосатындығы онсыз да анық еді.
1.2. МАТЕМАТИКАЛЫҚ ЛОГИК ЭЛЕМЕНТТЕРІ МЕН ЛОГИКАЛЫҚ ПРОГРАММАЛАУДЫ МЕКТЕПТЕ
ОҚЫТУ ... ... ... информатикасы түбегейлі бет бұрыс кезеңін ... Он ... ... ... ... алгоритмдеу, бағдарламалау
идеясымен есепті шығарудың ақпаратты технологиясы біршама ескірген. ... ... ... ... бөлігін құрайтындығы сөзсіз.
Бірақ олардың барлығы да осы ... ... сыя ... де даусыз.
Бұл жай ғана теорияның ғана емес бүгінгі ... ... да ... ... көптеген мектептер информатика мазмұнын басқа пәндермен араластыра
отырып оны жеке пән ретінде ... бас ... Бүл ... тек ... ... оку пәні ... статус беретін жаңа көз қарастар ғана
тоқтата алмақ. Ондай жаңа көз ... ... ... ... ... ... ... бүл жұмыстың екі түбегейлі бағыты туралы сөз ... ... ... оқыту кезінде Пролог тілін пайдалануға байланысты идеялар
комплексі. ... бүл ... ... ... ... тілі ... ... мен оқытудың жаңа парадигмасы жайлы болып отыр.
Пролог тілінің информатика курсында ... ... екі ... ... - ... ... оқыту тілі ретінде қолдану; екіншісі - оқуға
арналган бағдарламалар жасауда аспап ретінде қолдану.
Пролог ... ... беру ... ... ... 1978 жылы ... орта мектептерінің бірінде эксперимент түрінде басталды. Одан
кейін "Балаларға арналган ЭЕМ тілі ... ... ... жоба ... жоба Пролог тілі синтаксисінің фактілер мен ережелерді предикаттар
түрінде емес тізім түрінде ... ... бар ... қолданды.
Алдымен жобаға 10-12 жас аралығындағы балалар қатыстырылып артынша жүйемен
жұмысты қарапайымдаған соң 7-9 жас ... ... ... ... Оқу Прологтың білім қоры мен ... ... ... ... ... құрылды. Алдымен бір мақсатты қарапайым
сұранысы бар ... қор ... одан ... ... ... ... қоры, артынша рекурсиялары бар мағұлыматтар қоры енгізілді.
Пролог бойынша тапсырмалар негізінен әдебиетпен лингвистика ... ... және ... ... ... ... талдау бағдарламасы
құрылды. Даниядағы ... мен ... ... ... өтіп оң
нәтижелер берді.
1987 жылғы Мәскеу қаласындагы физика-математика мектебі мен ... ... ... және ... ... Пролог
тілі бойынша жүргізілген ... ... ... ... ... Пролог тілі төменгі сынып ... да ... ... тіл.
2. Пролог тілін оку кезінде окушы бірінші сабактан бастап ақ ақпараттық
логикалық ... деп ... ... ... ... ... бастайды. Есептер шығару кезінде ол ... ... ... ... ... - ойлай алатын, дәлелдеп ... ... ... ... ... ... ойлаудың
логикалық тілімен тығыз байланысты. Сондықтан Пролог тілі мен логикалық
бағдаламалауды меңгеру математикалық ... ... ... тығыз
байланысты.
Информатика курсы процедуралық пен бірге ... ... ... ... білу ... ... ... бөгет
жасамайды.
5. Процедуралық парадигмадан декларативтіге өту кезеңінде
елеулі қиындыктар байқалуы мүмкін. Мысалы, окушылар X
сыныпта ... мен ... ... ... XI ... ... ... игерген оқушылар ойлау әдісі өзгеріп
процедуралы багдарламалауда меңгерген әдістерін логикаға
ауыстыра алмайтын болғандықтан ... ... ... ... Керісінше алгоритмдеуді игере алмаған оқушылар логикалық
бағдарламалауда әжептеуір жетістіктерге ... ... ... ... ... ... мен студенттерде, маман
бағдарламалаушыларда да ... ... ... тілінің әр түрлі нүсқаларының ішінде оқу
мақсатына арнайы жазылып ... ... ... ... -Д – ... тілдік нұсқасын қолдану тиімді.
Пролог-Б ... ... ... ... ... пайдалануға икемделген интеграциялық жүйе болып
табылады. Бұл жүйеге арналып арнайы процедуралық графика ... ... ... ... әр ... оқу ... микропроцессор
түрі, ырғақтық жиілік, еске сақтау қабілетінің көлемі, тетіктер түрі сияқты
техникалық қамтамасыз ету ... ... та, ... ... ... трнсляторлар жиынтығы тәріздес бағдарламалық қамтамасыз ету
турғысынан алсақ та ... ... ... ... Пролог Б- ның
өнделген алгоритмдерін модефикациясыз толық жобалауға болмайды. Пролог-Б
жүйесін жасаудағы бірден бір прогматикалық ... ... ... ... ... ... ... бөлуге негізделген тәсіл. Кластарға
бөлудің бұл түрі ... ... ... ... ... негізделген.
Гуманитарлы бағыттағы сыныптарда Пролог - Б тілін оқыту тәжірибесі мынандай
нәтижелерді көрсетті:
Гуманитар багыттағы сынып окушыларымен жұмыс істеуде ... тілі ... ... ... ... ... толықтай балама тіл болып
табылады.
Прологты пайдалану заттың ішкі ... ... ... ықпал етеді.
Прологты пайдалану кезінде окушы обастан-ақ "ақылға
салынған" категориямен жұмыс істей бастайды. Бұл белгілі
мөлшерде окуга деген ... ... ... ... ... ең қиын ... - Прологтың білім берудегі орыны болып табылады. Пролог - Б
типтес жүйенің білім беру саласында қолданылу ролі гуманитарлы
бағыттағы ... ... ғана әсер етіп ... ... оны ... ... предикаттарымен толықтыру мүмкіндігі
Пролог-Б - ны дүниетанымдық ғылымдар практикумын ... ... ... білдіреді.
Пролог-Б логикалық бағдарламалау жүйесін пайдалану бағыттарының бірі ... ... ... тіл ... ... Жүйе ... ... пайдалануға бағытталған бағдарламаның интеграцияланған жүйесі ретінде
жасалған. Алайда жүйені кең ... көру ... оның ... ... ... ... алып ... Жүйенің интерфеисін берілген ... ... ... ... тіл ... ... дәстүрді ескеруі тиіс.
Қазіргі кезде ... ... ... есептеуіш
машиналар жобасын ... зор ... ... ... Тірі ... ... қызметін зерттейтін кибернетиканың
құрамды ... ... ... логика медицинамен
лингвистикада да кең ... ... ... ... ... логика-математикалық үлгілерінің қайта
жасалу міндеті қойылған ... ... ... да ... ... ... ... математикалық логика өз
қолданысын тапты. Кибернетика қажеттігі өмірге ойын ... ... ... ... кездегі математиканың жаңа салаларын әкелді. ЭЕМ
мен кибернетика арқылы математиканың шексіз ... ... мен ... ... ... ... ... деп аталынатын жиын терминінде
бірігетін бөлшектері бізге өткен ғасыр математиктерімен салыстырғанда әлде
қайда мазмұнды әрі ... ... ... де ... ... техникалық құралы математикалық әдістердің
өзіне елеулі ықпал етіп отырды. XX -шы ... 40-шы ... ... ... ... ғана ... Олар кейбір жеке операциялардың аз не көп
мөлшерде жылдам орындалуын қамтамасыз ... ... ... кездегі
ғылыммен техниканың практика жүзінде пайда болған есептерін сандық ... - ... ... ... көп амалдарды талап етеді,
ал ол бағдарламалар көбіне ... ... де ... ... ... ... емес ... есептеу жүмысының ұзақтығынан құнсызданып қалады.
Біздің ғасырымыздың 40-шы ... ... ... ... ... жаңа ... Құралғандықтан есептеуді өте жоғары жылдамдықта
жүргізуге мүмкіндік береді (бас кезінде ... ... ... секундына жүз
мыңцаған амалдар орындайды). Олар алдын-ала құрастырылған ... ... ... ... ... де ... ... алады. ЭЕМ дәстүрлі математикалық есептерді ғана емес, ауқымды
мағнадағы ... ... ... ... сынып есептерінде
шығарады.
Информатика іргелі ғылым болып табылады, сондықтан да, оның ... ... ... ... керек. Біздің ойымызша, мектептегі оқыту
келесі үш кең қамтылған бағыт бойынша жүргізілуі қажет:
информатиканың теориялық негіздері;
модельдеу, алгоритмдеу, программалау;
ақпараттық технологиялар.
Орта ... осы үш ... ... да ... беруге міндетті, алайда, болашақ
қызметінің бағытына байланысты оқушылардың ... ... ... ... ... мен тереңдігін таңдауға мүмкіндігі
болуы тиіс. Заманауи мектепте оқытуды дифференциялау ... ... ... ... ... Ең көп ... негізгі, техникалық және гуманитарлық деп бөлу.
Дифференциалды тұрғы әртүрлі саладағы мамандарды дайындауда аса маңызды.
ЭЕМ пайдаланушысын қысқа ... ... ... ... ... ... қазіргі таңда маңызды (технологиялардың даму қарқыны айтарлықтай
жылдам жүріп жатқандығын ескере отырып) және бірнеше жыл алға ... ... ... ... ... өнімдерді
пайдалануды үйрету керек (егер интерфейс оңтайлы болса, бұл да аса ... ... Енді ... туындайды: қандайма болмасын программалау
тілін әр адамның білуі міндетті ме. Біздің ойымызша, мектепте ... ... бір ... ... ... мүмкіндік болса, тіпті,
бір емес екі тілді қатарынан оқыту қажет. Мүмкін үміткерлерді қарастырайық:
императивті программалау тілі , ... тіл ... ... логикалық
программалау тілі – Прологты қарастыруға болады. Әр ... ... ... тұтып отырған жоқпыз, оның ... екі ... ... ... ... белгілі бір оқыту құралы ретінде
пайдалану. ... ... ... тілі алгоритм ұғымымен,
құрылымдаумен таныстырып, негізгі тапсырманы бірнеше қосалқы тапсырмаларға
бөлуге т.с.с. ... ... тілі ... ... ... физика,
химия және басқа да пәндерді оқуға пайдасы зор нысанды логикаға ... ... ... ғылым ретінде байланыстыруды көздемейтін
оқушыларға программалау тілі алдымен жалпы ... ... мен ... үшін және ... ... ... жетілдіру үшін қажет. Сонымен
қатар, мәтіндік редактор, электронды ... ... ... және
т.с.с. программалық құралдарды сауатты игерудің, сәйкесті макротілде
программалау екенін де айта кету ... ... ... жаңа машықтанғандарға да, гуманитарлық
білімге бейімдеу оқушылар үшін де аса қиындық туғызбайтындығы жиі ... оның ... ... ... ... анық ... ... да,
Пролог – теория предикаттарының логикасына негізделген, ... ... ... ... тіл. Алайда, мектепте бұл тілдің қабылдау
тереңдігіне жету қиын. Сондықтан да, ... ... ... ... ... тілінен бастап, кейіннен Пролог программалау
тіліне көшкен жөн ... ... тілі ... ... ... сыныптарда
программалаудың екінші тілі ретінде пайдалануға болады. Бұл ... ... ... ... ... ... ... программалау тілдерін пайдалану арқылы орындай алатынымыз белгілі.
Көп тілді меңгеру нақты тапсырманы оңтайлы шешу құралдарын еркін ... ... Осы ... ... курсына формальды логика
элементтерін қосу арқылы, тілді тереңдей түсінуге жағдай ... ... ... жаңа негізде ұйымдастыру алғышарттары да қызықты. Қазір
компьютерлер фон-неймандік архитектурада негізделген. Оны өзгертудің, ... ... ... мақсаттылығы мен мүмкіндігі туралы
мәселе көкейкесті болып табылады. Жапондардың бесінші буынды ЭЕМ ... ... ... ... ... негізгі тіл ретінде алынған болатын.
Мүлдем бөлек ... ... ... да ... ... «таныс жүйе» ұғымына негізделген ... ... ... ... ... пәні мақсатты түрде сандар жүйесін
үйрету болуы керек». Сандар жүйесін оқу, ... ... ... аспектілерін меңгеру деген сөз. Бірінші жағдайда сандарды
формальды өзгертуге үйрететін қандайда бір ... сөз ... ... негізінен сыртқы әлемнің фактілері мен құбылыстары туралы ой
қорытумен, оларды модельдеумен, ... ... ... оның ішінде
компьютерді пайдалану арқылы жұмыс жасаумен байланысты. ... ... ... ... оны мектепте оқыту да көп қиындық
туғызбайтындықтан, информатиканың мектеп курсында формальды ... ... ... көңіл көп аударылатыны түсінікті. Семантикалық ... ... ... әлдеқайда күрделірек, сондықтан, қоршаған
ортаны модельдеу тақырыптарын жоғарғы сыныптардың ... ... ... ... ... ... курсы кейбір мектеп бағдарламаларына керекті
толықтай көлемде кірістірілген.
Сондай-ақ, орта ... ... ... ... ... қосылуы
проблемасы формальды жүйе түсінігімен ... ... ... ... ... ... ... мақсаттарды көздейді: бір жағынан
бұл оқушылардың ... ... ... ... ... ... ал ... жағынан, информатика курсында да, математика ... ... ... ... бар, ... осы ... ... көбіне-көп ескерілмейді. Логикалық программалау парадигмасы,
оның ішінде Пролог программалау тілі, формальды ... ... ... да ... ... ... оқумен үздіксіз
байланыста болуы тиіс.
Жоғарыда ... ... ... ... мұғалімдерін
оқытудың логикалық программалау ... ... ... қабілеттер мен дағдылар кешені болашақ информатика мұғалімдерін
декларативті программалау парадигмасын қалыптастыруға, логикалық ... ... ... ... ... ... ... қолдану
дағдыларын өңдеуге бағытталған зертханалық-практикалық жұмыстар жүйесінде
қалыптасады. Практикумның негізгі дидактикалық ... ... ... ... шешу ... ... формалды-логикалық ойлау
үлгісін құру болып табылады. Курс тізбектелген компьютерлік практикум Турбо-
Пролог тілінің ортасында білімдер ... мен ... ... және құруға негізделеді.
Осылайша, Турбо-Пролог бағдарламалау тілі оқыту үрдісінде келесі
функцияларды жүзеге ... ... мәні ... ... ... трансляторы болып
табылады, осы арқылы білімді декларативті ... мен ... ... ... ... ... орнатуға мүмкіндік береді.
- Пролог адам білімдерін «іштей елестету» үлгісінің нақты деңгейін
құруға мүмкіндік ... және осы ... ... ... құралы болып
табылады. Пролог – болашақ информатика мұғалімдерін өздері ... ... және өз ... ... ... орта, яғни оқу мақсатындағы
программаларды әзірлеу және құру үрдісі үлгіленетін тапсырманы ... және ... ... түсінуге мәжбүр етеді.
- Пролог тілін мәліметтерді суреттеуге арналған құрал және ... тілі ... ... ... ... логикалық ойлау
теориясында, технологиясында және техникасында тікелей тәжірибе береді.
- Прологты қолдану компьютерлерді пайдалану мүмкіндігін ... жаңа ... ... ЭЕМ ... ... күрделі бөлігін өзіне
алуға қабілетті (күрделі ... ... ... ... ... ... Пролог оқушылар үйренетін түсініктерді
ойлау және сыни түрде ойша қорытуға көмектесетін сайман ... ... кету ... пәннің оқу бағдарламасының тұжырымды негізі, оқу
материалын іріктеу өлшемдері зерттеушінің ... ... ... ... ... ... ... келешегіне
болжамын білдіретін идеяларды іске асыруы тиіс. Осы тұрғыда оқу пәнінің
бағдарламасын құру ... ... ... да ашық жүйе ... ... ... ... қорыта отырып, келесі қорытындылар жасауға
болады:
- Пролог тілінің негіздерін информатиканың базалық ... ... ... ... ... ... адам ... ақпараттық-логикалық үлгілерін
жасауда оқушылардың танымдық іс-қызметінің ... ... ... ... ... ... оқу-бағдарлық орта болып табылады.
- Мектеп оқушыларын Прологта бағдарламалауға оқыту – логикалық дұрыс ойлау
дағдыларын ... ... ... ЭЕМ-де тапсырмалар шешуге
декларативті амалдармен танысу үшін тамаша құрал.
- Информатикалық базалық ... ... IВМ РС ... компьютерлері үшін
Пролог тілінің оқу нұсқасы сәтті қолданыла алады.
- Прологты оқу мақсатындағы программалық ... ... ... ... ... ... курстарға қосуға, сондай-ақ
информатиканы тереңдетіп үйренетін мектептер үшін ұсынуға ... ... ... ... ... ... ... өңдеу технологиясы
немесе жасанды интеллект деп ... ... ... ... ... ... жүйелермен, шешімдер қабылдауды және білім беруді
қамтамасыз ету жүйелерімен. ... ... ... ... ... ... де, ондағы туындаған мәселелермен де танысуға
мүмкіндік береді. Осы тұрғыда біз ... ... ... ... ... ... себептері, мектеп оқытушылары мен білім беру
бөлімдерінің әдіскерлерінің пікірінше келесі:
- Прологты ... ... тілі ... ... тек ... ... ғана жүргізіледі, және салыстырмалы түрде жуырда ғана
қолға алынды.
- Прологты ... ... өзі ... да, ... ... ... де әзірлену және эксперименталды тексеру сатысында тұр.
- Прологты үйрену бойынша заманауи оқу және ... ... ету ... мәселе тұрғанда болашақ информатика ... ... ... ... ... негіздері» пәнін енгізу негізді
бола түседі.
Жоғарғы мектеп ... ... ... ... ... ... [1994, с.4] өзінің докторлық диссертациясында келесі уәжбен
дәлелдейді: «Информатиканың түбірлі негіздерін ... ... ... Computer Science ... ... ... жарияланымдардың
пайда болуы кәсіби бағдарламашылардың өздері ... ... ... оның ... теоретикалық негіздеріне кетуіне
тырысатындығының маңызды симптоамы болып табылады. Осы тұрғыда ... ... жаңа амал ... үлкен рөлге атқарды...».
Айта кету керек, осы уақытқа дейін жинақталған Пролог ... ... ... ... ... Ол ... ... базалары мен
мәліметтер базаларын құру үшін, ... ... ... меңгеру үшін
қолданылады. Соңғы уақытта Пролог анағұрлым ... ... тілі ... ... ... ... Осы тұрғыда логикалық
бағдарламалау жаңа бағдарламалау әдістемесі ретінде ... ... 1.2 ... атап ... ... сипатты ерекшеліктері
процедуралық амалда адамды есептеу машинасының ... ... ... талдауға мәжбүрлейді. Бұл еңбектің бөлінуіне
әкеледі: ... ... шешу ... ... ... ... ... әзірлейді, сондай-ақ бағдарламалардың ... ... ... яғни ... нұсқаулықтарын компьютер
қабылдайтын командаларға аудары бойынша тынымсыз жұмыс атқарады. Логикалық
амалмен ... ... шешу ... бір ... бола ... ... ... бұндайда тапсырманы ойша шешу жұмыс істейтін бағдарламамен
тікелей сүйемелденетін ... ... ... сендіруге
негізделеді, бұл ... ... ... ... ... ... ... ал компьютер адамға тән нұсқаулықтарды орындауы тиіс.
Әрине, бағдарламалауға процедуралық та, логикалық та амал қолданған ... ... ... формализмнің білімі мен әдістерін білуі талап
етіледі. Қандай да бір деректерді айқын қалыптастыру ... ... ... ... ... қолдану арқылы қалыптастыру интеллектуалды
түрде игі іс болып табылады, ... бұл ... ... ... ... өзгешелігі, бағдарламалаудың процедуралық амалы кезінде
аталған пайдалы әсер үнемі ... ... ... ... ... ... ... олардың
әрқайсысы тиісті пәндік саланың объектілері арасындағы қасиеттерін немесе
қатынастарын суреттейді. Логикалық ... ... ... ... ... ... болып табылмайды. Компьютерде
орындалатын бағдарлама логикалық бағдарламаны құрайтын пәндік ... ... ... ... ... ... не дәлелдеу, не болмаса жоққа
шығару қажет пәндік сала объектісінің ... ... ... ... ... ... мен ... логикалық бағдарламаға
қосу кезінде ғана қалыптасады. Бұл жерде Пролог шешім алгоритмдерін деталды
бағдарламалаусыз-ақ ... шешу ... анық ... ... ... ... ... іздеуден қандай шешім
қажеттігін анықтауға өтуге ... ... ... ... Дж.Малпастың [1990,с15] сөздері келтіріледі: «Пролог ... ... ... ... көзқарасы спецификация деңгейіне де
көтеріле алады. Егер бағдарламашы бағдарламаға трансляциялаудың дәлдігіне
(яғни іске асыруға) мән ... ... ... ... ойлана алмаса, онда анағұрлым маңызды мақсаттар үшін уақыт кеңейеді.
Кейде Прологты бағдарламашыға әлемге логикалық көзқарас беретіндігі ... ... ... те ... ... ... пролог-бағдарлама
түрінде білдіруге болады».
Прологты қолдану ауқымы кең. Ол күрделі құрылымның сандық емпс мәліметтері
қолданылатын, ... ... ... ... ... ... ... рөл
атқаратын тапсырмаларды шешуде өзін жақсы қырынан таныта білді. Пролог
келесі ... ... құру ... сәтті қолданылады:
- қолданбалы бағдарламалардың жедел прототиптерін әзірлеу;
- өндірістік үрдістерді басқару;
- динамикалық реляциялық мәліметтер базаларын жасау;
- бір тілден екіншісіне аудару;
- ... ... үшін ... ... ... эксперттік жүйелер мен эксперттік жүйелердің қабықтарын жүзеге асыру;
- дифференциялау мен ... ... шешу үшін ... ... ... ... және Прологтың дедуктивті ... ... ... ... теорияларды тексеру үшін қолданылатын жасанды интеллект
пакеттерін дәлелдеу» [Доорс, 1990, с.5].
Кез-келген тілді үйрену күш пен уақыт жұмсауды ... ... ... ... растаудың қосымша аргументтері ретінде бағдарламалау
бойынша белгілі югославиялық ... ... ... ... ... ғасырларда латын және грек тілдерін білу кез-келген ғалым
білімінің елеулі бөлігі болды. Бір ғана ... ... ... ... деп ... ... өйткені әлемге бірден екі көзқарас тұрғысынан
қарау мүмкіндігінің ... ... ... ... ... ... ... және Прологпен таныс болмаса жасанды интеллект
саласындағы бүгінгі күннің зерттеушісі де өзін ... ... ... ... осы екі ... тілін білмей тұрып зерттеу мәніне кең
көзқарас білдіре алмайды . Прологтың ең бір тамаша ... ... ... ... ... табылады, сондықтан да студенттер жасанды
интеллект бойынша кіріспе курсты үйрену ... оны ... ... ... ... ... ... зерттеушілер мен әдіскерлер
болашақ информатика ... ... ... ... ... ... ... амалдар әзірлей отырып басшылыққа алады.
Нақты мысал ретінде ... пен ... [1992] ... ... дайындау бойынша оқу жоспарында ұсынған бағдарламаны
қарастырамыз. Ол студенттердің ... ... ... ... ... ... ... ал таңдау бойынша пәндер қатарына
осы бағдарламалардың авторлары «Логикалық ... ... ... семестрде тарауды үйренуге авторлар 44 сағат жоспарлайды, соның ішінде:
дәріс 8 сағат, ... ... 24 ... жекелей сабақтар 12 сағат.
Айта кету керек, осы пәнді игеруді авторлар екінші семестрде информатика
мұғалімдерін дайындау үшін ... ... ... ... ... педагогикалық институтында ... ... ... ... ... бағдарламасына «Логикалық
бағдарламалау элементтері» тарауын игеру кіреді.
МГПУ-де математика факультетінің ... ... ... ... бағдарламасында логикалық бағдарламалау «Мәліметтер базалары мен
білім ... ... жеке ... ... үйретіледі.
Воронеж ГПИ физика-математика факультетінің студенттерін информатика
бойынша ... ... ... ... ... 1 ... МSХ-2 КУВТ үйретуді қарастырады.
Прологты игеру бойынша сабақтар ... үшін ... ... талдай отырып, логикалық бағдарламалау болашақ мұғалімдерді (тек
информатиканың ғана емес) кәсіби дайындау ... ... ... айта кету ... ... бүгінгі таңда информатика курсының осы
пәнінің мақсаттары мен мазмұнын ... ... ... ... тұрады.
Омск ГПИ бағдарламасының авторларының логикалық бағдарламалау элементтерін
оқытуды базалық курс шеңберінен тыс шығаратын көзқарастарымен ... ... ... ... ... ... игеруді қалайтын Воронеж
пединститутының амалдарымен де келісе алмаймыз. ... ... ... ... біз 1.4. ... ... ... атай кетейік, «Логикалық бағдарламалау негіздері» ... ... ... ... ... ... білімдер және
бағдарламалаудың процедуралық тілдерін ... ... ... ... ... және ... бола ... Осындай амал студентке
ЭЕМ-де нақты бір тапсырманы шешу үшін ... ... да бір ... (процедуралық немесе декларативті) біліктілікпен таңдауға мүмкіндік
береді.
Сондай-ақ айта кетелік, Омск ГПИ мен МГИУ ... ... ... ... мен ... ... құру үшін саймандық
құрал ретінде қолдануға бағытталған. Ақырға тарауы Прологта логикалық
тапсырмалар шешу ... ... ... ГПИ ... ... оқу ... ретінде қолдануды көбірек қалайды және ... ... ... ... ... Оқу ... ... таратуына қарағанда, бұл бағдарлама практикалықтан гөрі теоретикалық
бағытқа көбірек ие.
С.А.Бешенков ұсынатын «Пролог ... ... ... ... ... ... мақсаты етіп адам үшін ... ... ... ... ... тілі ретінде қолдануға мүмкіндік ... ... ... ... ... да ... ... автор орыс тілді лексикаға ие ... ... оқу ... оқу ... мен ... ... ... «Логикалық
бағдарламалау негіздері» пәнін ТфСГПУ-де 1991-1997 жж. Оқыту практикасы
келесі ... ... ... ... ... ... ... мамандықтарының барлық
студенттерін бағдарламалаудың декларативті ... ... ... ... ... ... болып табылады. Әсіресе,
«Логикалық бағдарламалау негіздері» пәнін бағдарламалаудың процедуралық
және ... ... ... кейін үйрету анағұрлым тиімді
болады.
2. Педагогикалық ЖОО студенттерін оқыту үшін бағдарламалау тілі ретінде
Прологқа таңдау 1.3. ... ... ... ... ... ... ... Прологты оқу және сайманды орта ретінде қолдану
студенттердің ақпараттық, математикалық және логикалық ... ... ... ... ... тілінің теоретикалық негізі бірінші кезектегі
предикаттар логикасының математикалық аппараты және ... ... ... табылатындықтан, пәннің ерекшелігі математикалық логика
элементтерін үйрену мен игеру ... ... ... ... болып
табылады.
4. Прологты қолдану саласы – сандық емес тапсырмаларды, ... ... ... ... ... Әсіресе ол күрделі құрастырылған
сандық емес мәліметтер үлкен ... ие және ... ... ішінен
шешімдер іздеу қажет етілетін ақпараттық-логикалық тапсырмаларды шешу үшін
тиімді. Осы факторлар ... ... мен ... ... ... ... үшін қолданылатын практикалық ... ... ... кезінде анықтаушы болып табылады.
5. Прологты игеру кезінде студент бірінші сабақтан бастап өзінің ақпараттық-
логикалық үлгілерін ... және ЭЕМ ... ... жүргізуге
мүмкіндік алады. Пролог тілінде тікелей үлгілеу мүмкіндігі «нақты»
тапсырмалар шешу ... ... ... мүмкіндіктерін
ынталандырады.
6. Пролог тілін үйренуде студент «эффектілерді» бақылай отырып бағдарлама
ішіндегі мағынасыз өзгерістерге соншалықты ... ... ... ... ... ... «бостан-босқа эксперименттеу»
құбылысы мүлдем дерлік байқалмайды.
7. ЭЕМ-ді ... ... ... ... ... ... ...
ұсынылатын оқу пәнінің логикалық ақыры.
8. ЭЕМ-де практикум өткізу үшін Borland International фирмасы ... ЖОО ... ... IBM РС ... үшін ... ... жүйесін ұсынамыз. Осы жүйенің артықшылықтарының
ішінде толық экранды редактор, көптерезелі ... ... ... ... реттеуші бар. Бұдан өзге Турбо-Пролог түсті
графиканы, терезелермен жұмысты ... және ... ... және ... орындауымен ерекшеленеді.
Біздің қорытулар 300 студентке жүргізілген анкеталық сауалнама арқылы
толықтай расталады. Орындалған ... ... ... ... ...... ... коэффициенті 0.96 тең, яғни
бірлікке жақын.
Біз әзірлеген «Логикалық бағдарламалау ... ... ... ... ... ... ... мазмұнын және әдістемесін кеңірек диссертацияның екінші
тарауында ұсынамыз.
Оңтайлы педагогикалық құралдарды ... ... ... ... ... ... амал болып табылады. Шешімдер қабылдау кезінде
жүйенің құрауыштары арасындағы барлық заңды байланыстар ескерілген ... ... ... ... ... ... ... амал педагогикалық
үрдістің біртұтас артуын қамтамасыз етеді, оны оңтайландырудың шарты
болады.
Әдістемелік ... ... ... ... ... ... 1985; ... 1988] анықтамаларды салыстыру және
қорыту ... бес ... ... ... ... түсінетін
боламыз:
мақсатты;
мазмұнды;
операциялық-іс қызметті (әдістер, формалар және оқыту құралдары);
бақылау-реттеу (оқытудың қойылған міндеттерін шешу барысын оқытушының ... ... және оқу ... ... ... ... ... (оқыту үрдісінде қол жеткен ... ... және ... ... ... олар қойған оқыту міндеттердің
сәйкестігін орнату, анықталатын ауытқушылықтардың себептерін айқындау, жаңа
оқыту міндеттерін қою).
Әдістемелік оқыту жүйесін ... ... ... ... ... ... ... құруды қалайды, бұл зерттеушіден құрамдық ... ... ойды және ... дұрыс өзара әрекеттесуде қарастыруды ... ... ... ... құрауыштарының өзара әрекеті оның
функционалды сызбасында көрнекі орын алады.
Әдістемелік жүйе күрделі динамикалық қалыптан тұрады. Оқытудың ... ... оның ... ... ... ... ... ұйымдастырудың нақты
әдістері мен формаларын талап етеді. Оқыту барысы бойынша ауызша, ... ... ... мен ... ... ... ... және қорытынды бақылау қажет. Бақылау оқу үрдісінде кері
байланыстың жұмыс істеуін – оқытушының ... ... ... оқыту
тапсырмаларын кезеңмен шешу сапасы туралы ақпаратты алуын қамтамасыз етеді.
Кері ... оқу ... ... корригирлеуді реттеу, оқыту әдісі
мен формасына өзгерістер енгізу, оларды сол ... үшін ... ... ... Қол ... нәтижелерді бағалау қойылған оқу-
тәрбие міндеттеріне сәйкестіктен нақты ауытқушылықтарды анықтап, білім ... ... ... ... жаңа ... ... ете алады. Ақыр соңында, әдістемелік жүйенің барлық ... ... ... ... алуды қамтамасыз етеді, оның талдамасы
білім мен ептіліктегі анықталған ... ... ... ... ... ... ... қою жолымен анықталатын
ауытқушылықтардың себептерін анықтауға және жоюға мүмкіндік береді.
Оқытудың әдістемелік ... ішкі ... ... оның ... ... ... таңдаудың барынша кең мүмкіндіктеріне жол ... ... ... ... ... ... қағидалар
қажет. Бұндай қағидаларды А.М.Пышкало [1975] оқытудың әдістемелік жүйесін
жетілдіру ұстанымдары деп атады.
Әдістемелік ... ... ... ... мақсаттылық ұстанымы болып
табылады: әдістемелік жүйені жетілдірудің бағыттары мен нәтижелері және
оның ... ... ... ... ... сай ... ... жүйені жетілдіру бағыты жүйелік амалдың ... ... ... ... тиім ... ... құрауыштарының бірінің кез-
келген өзгерісі міндетті түрде өзгелеріне әсер ... Осы ... ... жайт ... ... ... байланыс ұстанымы деп атаған
әдістемелік жүйені жетілдіру ... ... ... құрауыштары
өзгерген кезде осыдан туындайтын салдарын қалған басқа да құрауыштары үшін
анықтау қажет.
Көрсетілген ұстанымды толықтық ұстанымы деп аталатын жүйедегі ... ... ... ... ... ... ... жүйені жетілдіру
кезінде оның құрылымының әрбір элементіне көңіл бөлген жөн.
Жаңа оқу пәнінің даму ... ... ... ... және оқу-
әдістемелік құжатнаманы және оқу-әдістемелік ... ... ... ... ... ... анықтап алған дұрыс.
Оқытудың әдістемелік жүйесін құруды оқыту, ... және ... ... ... қажетті тиімділігін қамтамасыз ететін оқытуға
қойылатын негізгі талаптар жүйесі аясында түсіндірілетін оқытудың кәсіби-
педагогикалық бағытының дидактикалық ұстанымдарына сәйкес ... ... ... ... ... ... ... жасаған белгілі
дидактикалық ұстанымдарды тізімдейміз:
1. Оқытудың әдістемелік жүйесінің мақсаттылық ұстанымы. Жақсы ойластырылған
мақсат ... ... ... ... ... ... ... сипат береді, оқытушылар мен оқушылар ... ... ... ... ... ... талап етеді [Краевский,
Лернер,1983]:
а) ... ... ... ... ... ... ... танымның жеке және жалпы ғылыми әдістері туралы түсінігін
қалыптастыру;
б) таным үрдісінің маңызды заңдылықтарын үйрену.
3. Қол жетімділік ... ... ... ... ... және
моралды салмақсыз оқушылардың мүмкіндік деңгейінде құрылуы тиіс.
4. Жоспарлаудың түрлі формаларында ... ... іске ... ... ... ... ... кезінде оқу материалының тараулары
арасында ... ... ... ... мен ... ... игерудің реті, теоретикалық және зертханалық ... оқу ... ... және ... ... ... Заңдылық орнатылған – логикалық байланыстарды сақтаған
жағдайда оқу және дүниетаным ... ... ... және ... игеріледі. Жүйелік пен кезектілік аз уақытта үлкен нәтижелерге жетуге
мүмкіндік береді.
5. Көрнекілік ұстанымы Я.А.Коменскийдәі «дидактиканың ... ... ... ... ... мүшелерін тартуды талап етеді. Оқыту
көрнекілігі оқу үрдісінде әр түрлі ... ... ... оқу ... ... т.б. ... ... Оқытудың оңтайлы әдістерін, формаларын және құралдарын таңдау ұстанымы
педагогтарға ғылыми негізде нақты пән үшін сәйкес келетін ... ... ... ... Бұл ... ... ... шығармашылыққа
шақырады, озық тәжірибенің жетістіктерін, сондай-ақ оқыту саласындағы
өзінің зерттеу іс-қызметін қолдану үшін кең ... ... ... ... ... ұғынушылық және әрекеттік ұстанымы, осыған
сәйкес оқытудың әдістемелік ... ... ... ... ... ... білімнің ұғынушылығын және әрекеттік
білім, ептілік, дағдыларды және тәртіп тәсілдерін қалыптастыруды ... ... ... ... ... ... ... әдістемелік жүйесіне ықпалы туралы мәселе елеулі қызығушылық
тудырады. Әдістемелік жүйенің нақты бір ... үшін ... ... ... ... те ... бөлуге болады: осылайша,
мақсаттылық ұстанымы жүйе құраушы мақсаттық құрауышты ... ... ... ... ... қол жетімділік, жүйелік және кезектілік
ұстанымының анықтаушы ықпалы көп дәрежеде ... ... ... оқытудың формалары мен құралдарының оңтайлы әдістерін таңдау
ұстанымдары – ... ... ... пен ... әрекеттігі
ұстанымы – бақылау-реттеу және ... ... ... ... ... пәні бойынша оқу материалын іріктеуге
және оқу-әдістемелік құралдарды ... ... ... ... ... құрамды құрауыштары туралы ... ... ... ... ... ... оқытудың мақсаттары мен міндеттерін негіздеумен ... ... оқу ... ... бір материалында білім беру мазмұнының
жалпы құрылымы – білімді , ... пен ... ... ... жеке ... шығармашылық, дүниетанымдық және тәртіптік
қасиеттерін көрсетеді.
Екінші кезең оқыту мазмұнын іріктеумен байланысты.
«Оқыту мазмұнын ғылыми негіздеп ... және ... ...... ... бітпейтін мәселелерінің бірі. Ғылыми білімді үздіксіз
жаңартумен, оларды саралап жіктеумен және ... жаңа ... мен ... ... ... т.б. пайда
болуымен қолдау табатын ғылыми-техникалық прогресті жылдамдату жағдайында
бұл мәселе, ... ... ... мен ... ... кіретін
ғылымның, техниканың, өндірістің динамикалық, тез ... ... ... ... ... ... түседі. Осыған орай ... және ... ... бағытын белгілеуге мүмкіндік беретін
айқын әдіснамалық бағдарларды басшылыққа алу, оқытудың мазмұнын іріктеуде
әлі да көп ... өте ... ... жеңу ... - ... [1987] әлі де ... жоймаған тезисі.
Осы мәселені шешу үшін өзара байланысқан, бірақ бір-біріне тән ... ... ... «оқу ... және «оқу ... ... дәлдеу қалды.
Қазіргі заманғы дидактикада көрсетілген түсініктер айқын ... ... жоқ. ... ... ... ... ... сұрағына жауап бере
отырып, ... ... ... В.С. ... ... и ... [1983], ... [1974] оқыту мазмұнын
көрсетілген түсініктермен теңдестіре отырып деталдандырылған және логикалық
қарапайымдандырылған оқу ... ... Біз ... анағұрлым негізді деп есептейміз: «... оқыту мазмұны деп ... ... ... ... ... мәтіндік бекітілген оқыту мақсаттарына жету үшін кең көлемде берілген
және оқытушылардың оқыту ... және ... ... ... ... ... ... тиісті меңгеру туралы ғылыми
ақпаратын түсіну қажет». Осы анықтамада айтылғандай, ... ... ... деректі түрде тіркеледі және ... ... ... оның оқу ... ... қажет.
3. Үшінші кезең оқу материалын іріктеумен, жүйелендірумен және ... оқу ... ... ... «Оқу ... түсінігі В.В.Давыдов
[1972], Л.Клинберг [1984], И.Я.Лернер [1980], ... ... [1980] ... талқыланады. Оқу пәнінің заты ғылыми
білімдердің дидактикалық өтелген жүйесінен тұраты.
Білімнің ғылыми ... ... ... ... өзгешелігі оның құрамында
ерекше құрауыштардың бар екендігі болып табылады [Бабанский,1988]:
ғылымдардың негіздері (оның негізінде жатқан іргетастық қағидалар);
оның ... ... мен ... да бір ... ... ... және ... ғылымды дамыту үрдісінде орнатылған заңдары мен заңдылықтары;
ғылыми білімдердің сәйкес саласындағы ... ... мен ... ... мен ... объектісін зерттеу үрдісінде осы ғылым қолданатын әдістер;
ғылыми білімдердің сол ... ... ... ала ... ... ... да бір ... заңдардың, заңдылықтардың негізінде жатқан
фактілер.
Меңгерілетін ғылымның логикалық құрылымының құрауыштарын талдау маңызды
болып ... ... ... ... ... оқу ... ... анықтауға және ғылыми негіздеуге болады.
4. Төртінші ... ... ... ... мен ... құралдарды тәжірибелік-эксперименталды мақұлдау жүргізілген
және олардың мазмұнына қажетті түзетулер енгізілген.
Диссертацияның ... ... ... ... физика-
математикалық мамандық студенттерінің логикалық бағдарламалау негіздеріне
оқытудың әзірленген әдістемелік жүйесінің әрбір ... ... ... біз ... ... бағдарламасы
|Тақырып № |Тақырып, |Тақырып мазмұны ... ... |
| ... | ... ... |
| ... | | | |
| | 1 ... Жасанды интеллект | |
|1 ... ... ... ... ... |1 |1 |
| ... |технологияны интеллектендіру, | | |
| ... ... ... ... | | |
| ... ... ... арналған | | |
| ... ... | | |
| | ... ... | | |
|2 ... ... ... интеллектіні оқып |1 |2 |
| ... ... ... мақсат,| | |
| ... ... ... ... ... ... | |
| ... және |және ереже ұғымдарымен | | |
| ... ... | | |
| ... | | | |
|3 ... ... ... ... жүйесіндегі |1 |3 |
| ... ... ... | | |
| ... ... | | |
| ... | | | |
| ... және | | | |
| ... | | | |
| ... | | | |
|4 ... ... ... ... ... және|1 |4 |
| ... ... ... моделдерімен | | |
| ... ... | | |
| ... | | | |
| ... | | | |
| ... | | | |
| ... | | | |
| |тор. ... | | | |
| ... | | | |
| |2 ... Сараптаушы жүйелер | |
|1 ... ... ... ... және |1 |5 |
| ... Жүйе ... құрылымымен таныстыру. | | |
| ... | | | |
|2 ... ... ... жүйелерін түрлі |1 |6 |
| ... ... және ... | | |
| ... ... | | |
| |ау. ... ... дайындауды | | |
| ... ... | | |
| ... | | | |
|3 ... |Есепті тұйық |Сараптау жүйесіндегі есепті |1 |7 |
| ... ... ... таныстыру. | | |
| ... ... және ... | | |
| ... ... ... | | |
| ... | | | |
| ... | | | |
| ... | | | |
| |3 ... ... ... | |
|1 ... ... |Логикалық бағдарламаның өзіндік|1 |8 |
| ... ... және ... | | |
| ... ... ... | | |
| ... | | | |
| ... ... | | | |
| ... | | | |
|2 ... ... ... ... Пролог ортасы және |1 |9 |
| ... және ... ... | | |
| ... |құрылымымен танысу | | |
| ... | | | |
|3 ... ... ... ... |1 |10 |
| ... ... | | |
| ... ... ... және | | |
| ... |пролог бағдарламасын басқару | | |
| ... ... | | | |
| ... | | | |
| ... | | | |
|4 ... ... Пролог |Турбо Пролог логикалық |1 |11 |
| ... ... ... | | |
| ... және |қайталанатын процесстерге | | |
| ... ... ... ... | | |
| ... | | | |
|5 ... ... ... ... ... |1 |12 |
| ... ... және ... ... | |
| ... ... ... түсінік | | |
| ... ... | | |
| ... | | | |
|6 ... |Турбо Пролог |Логикалық бағдарламадағы жолдар|1 |13 |
| ... ... ... ... ... | | |
| ... |предикаттарға түсінік беру. | | |
| ... | | | |
| ... | | | |
|7 ... ... |Логикалық бағдарлама көмегімен |1 |14 ... ... ... қорын құру және | | |
| ... ... ... ... | |
| ... |таныстыру | | |
| ... | | | |
| ... | | | |
|8 ... - ... - ... ... |1 |15 ... ... ... ... ... ... | | |
| ... ... ... | | |
| ... | | | |
| ... | | | |
| ... | |15 | ... Зертханалық, студиялық сабақтар
|№№ п.п. |Сабақтардың аттары және ... ... ... |
| | ... ... ... |
|1 ... бағдарламадағы |компьютер |4 |1,2 |
| ... ... | | | |
| ... ... ... | | |
| ... | | | |
|2 ... бағдарламадағы |компьютер |2 | |
| ... мен ... | | |3 |
| ... ... ... | | | |
| ... | | | |
|3 ... бағдарламадағы |компьютер |2 | |
| ... ... мен | | |4 |
| ... | | | |
|4 ... ... ... ... |2 |5 |
| ... | | | |
|5 ... және кесу ... ... |2 |6 |
|6 ... және ... ... |2 | |
| ... ... ... | |7 |
| ... | | | |
|7 |№1 ... ... ... |2 |8 |
|8 ... ... және ... ... |2 |9 |
|9 ... ... ... |2 |10 |
| ... және ... элементтерін| | | |
| ... ... және ... | | | ... ... ... ... |2 |11 |
| ... ... ... | | | ... ... және ... |компьютер |4 |12,13 |
| ... қоры | | | ... ... - ... жүйесіндегі |компьютер |2 |14 |
| ... ... ... | | | |
| ... негізгі графикалық | | | |
| ... | | | ... |№2 ... ... ... |2 |15 ... | | |30 | ... ... ... ... ... өзіндік жұмыстары
|№№ п.п. |СӨЖ тақырыптардың аттары және |Бақылау ... ... ... ... ... ... |р |
| | | | ... ... ... ... ... |Компьютерде |1 |1 |
| ... ... ... ... | | |
| ... ережелерді құру. | | | |
|2 ... ... ... ... ... |1 |2 |
| ... құрып үйрену. Факті,| | | |
| ... ... ... базасы және | | | |
| ... ... ... ... | | | |
|3 ... ... ... ... |Компьютерде |1 |3 |
| ... ... ... | | | |
| ... және ... | | | |
| ... ... | | | |
|4 ... ... ... ... ... |1 |4 |
| ... ... | | | |
| ... білу | | | |
|5 ... ... ... ... ... |1 |5 |
| ... ... | | | |
| ... ... | | | |
| ... танысу. | | | |
|6 ... ... және кесу ... ... |1 |6 |
| ... қарастыру | | | |
|7 ... ... ... ... |1 |7 ... ... ... Рекурсия | | | |
| ... ... | | | |
|8 ... |Тізімдерге қолданылатын негізгі |Компьютерде |2 |8,9 |
| ... ... ... ... | | |
| ... сорттау және түзету | | | |
|9 ... ... ... ... ... |1 |10 |
| ... ... ... | | | |
| ... ... ... | | | |
| ... ... ... | | | |
| ... | | | ... ... ... және сыртқы мәліметтер |Компьютерде |2 |11,12 |
| ... ... ... | | | |
| ... ... ... | | | |
| ... істеп үйрену | | | ... ... ... ... ... ... |1 |13 |
| ... істейтін предикаттармен | | | |
| ... ... ... | | | ... ... ... ... графикалық |Компьютерде |2 |14,15 |
| ... ... ... | | |
| ... | | | ... | | |15 | ... ... өзіндік жұмысы
|№№ |СОӨЖ тақырыптардың ... және ... түрі ... ... ... |тапсырмаларының мазмұны | ... ... |
|1 ... ... ақпараттық |Презентация |6 |1, 2, 3 |
| ... ... | | | |
| ... ... ... жұмыс | | | |
| ... ... ... | | | |
| ... | | | |
|2 ... ... оқып үйренуде|Презентация |6 |4, 5,6 |
| ... ... ... | | |
| ... ... ... және ... | | | |
| ... | | | |
|3 ... ... ... ... |6 |7,8,9 |
| ... құрылымы. Білімді | | | |
| ... ... және оның | | | |
| ... ... | | | |
|4 ... ... және оның ... |6 |10, 11, |
| ... | | |12 |
|5 ... жүйесіндегі есепті шешу |Компьютерде |6 |13, 14, |
| ... ... және ... | | |15 |
| ... Логикалық бағдарламаның| | | |
| ... ... және ... | | | |
| ... | | | |
| ... | |30 | ... ... ... ЛОГИКАЛЫҚ ПРОГРАММАЛАУ ТІЛІ
Турбо Прологтың негізгі мәзірінде, экранның ... ... ... 7 ... көрсетіледі. Команданың әрбір басқы әрпі қанық
бояумен бөліп көрсетілген. Себебі, пайдаланушыға ... ... ... ... ... ... ... кезден команда орындалатының еске салу
үшін бөліп көрсеткен.
Команда Турбо Прологтың мынадай 7 ... ... ... іске қосу(Run).
2. Бағдарламаның берілуі(Compile).
3. Бағдарлама мәтінің редакциялау(Edit).
4. Компилятордың опция тапсырмасы(Options).
5. Файлдармен жұмыс(Files).
6. Жүйені баптау(Setup).
7. Жүйеден шығу(Quit).
1 ... ... 3. ... 4. ... ... төрт ... құрылған (1.1.1 сур.) Жоғары сол жақ бұрышта
Турбо Прологтың редактор ( Editor ) ... оң жақ ... ... ... сол жақ төменде хаттама (Message) терезесі, оң жақ
төменде трассировка (Trace) ... ... Егер ... мониторыңыз
түсті болса, онда редактор терезесіне бастапқыда ... ... ... ... және ... ... қара түс беріледі.
Турбо Пролог тілінің ұғымдары мен ... ... ... Логикалық бағдарлама «Алия алманы ұнатады» қолданбасы ұнатады
(Алия, алма) фактісімен беріледі.
«Жазира Алияның ... ... ... аналогы, ұнатады
(Жазира, Х) :- ұнатады ... Х) ... ... ... синтаксистік пішіні, Турбо Пролог тілінің синтаксисіне өте
жақын. Өкінішке орай Турбо Пролог тілі ... ... ... ... ... ... ... Сөйлем бас әріппен басталса Турбо
Пролог тілі айнымалы ретінде түсінеді. ... ... ... ... ... болу ... қазақ алфавитін латын алфавитіне, ал
әріптерді кіші әріптерге өзгерту ... Осы ... біз ... ие ... 1.1. Likes предикатының процедурасы.
likes (alia, apples).
likes (jazira, X) :- likes (alia, ... ... if ... сөзі деп ... бір назар аударатын жағдай екі қолданба ... ... ... ... екі тұжырым пайда болды. ... ... ... ... ал екінші тұжырым шарттан тұрады. ... ... ... ереже деп аталады және жаңа фактілерді шығаруға ... ... ... ... ... ... деген жауап алуға
болады.
Логикалық бағдарламаға анықтағымыз келген мақсатты берсек, нәтижесінде ... ... Егер ... ... ... жоқ болса, бағдарлама
жұмыс істегенде мақсатты сұрайды. Мысалы: 1.1. бағдарламасын іске ... (alia, apples) ... ... ... ... бағдарламада бар фактіге қойып, Yes ... ... біз ... likes (jazira, apples) ... ... ... ... тілі
мақсат термдерімен бағдарламадағы таңдалған термдер предикатымен сәйкес
болмай қалған жағдайға дейін салыстырады. Біздің жағдайда ... ... likes (alia, apples) ... ... ... ... likes терм предикаты фактідегі терммен сәйкес, және Жазира
мақсат объектісін Алия объектісімен ... ... ... өйткені бағдарламадағы Алия және Жазира объектілері әртүрлі.
Турбо ... ... ... ... (jazira, X) :- likes (alia, ... таңдайды.
Ереже “ :- ” белгісінің сол жақ бөлігі басы ... ... ... оң жақ ... ... ... деп аталады. Турбо Пролог бағдарламасы
әрқашан ... ... ... мақсатты ереже тақырыбымен
салыстыруға тырысады, ал егер салыстыру сәйкес болса мақсат ереже ... ... ... likes ... ... және likes (jazira, ... ... үйлестіруге тырысады. Х-айнымалысының мәні жоқ болып кез-
келген объектімен үйлестірімді. Біздің ... ... ... likes
(jazira, X) предикатының салыстыруы likes (Jasira,apples) түрінде болады.
Турбо Пролог бағдарламасы ереже болып және ... ... ... Х-
айнымалының likes apples мәніне ие болғандығын анықтайды.
Келесі жолы ... ... likes (alia,X) ... орындауға likes
(alia,apples) ішкі мақсатын анықтайды. Алия алманы ... көре ... ... ... тура келеді. Турбо Пролог бағдарламасы ... ... ... ... ... likes ... ... салыстырмалы
ішкі фактіні табады. Сәйкесінше likes (jazira, X) ақиқат ... ... ... ... ... ... ... өзіндік өте күрделі
бағдарламалау ... бар. ... ... тілдеріне қарағанда, Пролог
бағдарламасы өте қатал тілдердің бірі ... ... ... ... ... ... ... алдын-ала
сипатталады. Әрбір бөлім өзіне тән ... ... ... ... ... ... ... немесе бағдарлама аяғына дейін жетуі
мүмкін.
CONSTANTS

DOMAINS

DATABASE [-]

PREDICATES

GOAL

CLAUSES

1.1 сурет Бағдарламаның ортақ құрылымы.
Бағдарламаның құрылуына байланысты қолданушы ... ... ... ... ал ... ... ... да болады. Бөлімдердің орындары
ауысқанмен бағдарлама қатесіз жұмыс істей береді.
Турбо Пролог тілінің бөлімдерін толық қарастырайық.
CONSTANTS бағдарламада қолданылатын ... ... ... емес немесе құрама типтегі мәліметтер сипатталады.
DATABASE динамикалық ... ... ... ... ... ... ... предикаттар сипатталады.
GOAL бағдарламадағы мақсат бекітулер сипатталады.
Бағдарламада GOAL бөлімінен басқа бөлімдер ... да ... да ... ... деп ... ... ... домендермен предикаттарды айтады.
Әрбір бөлімді сипаттау кезінде кілттік сөз қойылады.
Мысалы: CONSTANTS, DOMAINS, DATABASE, GOAL PREDICATES.
Глобальді предикаттарды ... ... ... ... ... шықпа және кірме болатындығын көрсету керек.
Мысалы:
GOAL ... ... integer, integer) –(i, i, ... (string, integer) –(i, i) (i, ... max ... екі ... ... немесе (i-input) белгіленіп,
ал үшіншісі шықпа немесе (o-output) түрінде ... length ... ... ... ... болады. Екі аргументте белгіленген немесе
біріншісі белгіленген немесе екіншісі белгіленген.
1.1 Бағдарламасының толық нұсқасын қарастырайық.
PREDICATES
likes (symbol, ... (jazira, ... (alia, ... (jazira, X) :- likes (alia, X).
Мысалдағы бағдарлама үш ... ... ... ... likes
предикатының екі аргументі symbol ... ... ал GOAL ... ... берілген бекітулердің анықтайтын мақсаты орналасқан.
Турбо Пролог бағдарламасының ... ... ... ... ... ... екі түрі бар. ... түрі мәтінді таңбалармен
қоршау. Мысалы: /*түсініктеме*/. Мұндай жағдайда ... жолы ... көп ... ... Егер түсініктеме бір жолдан тұрса, % -белгісі
қойылады. Бағдарлама % -белгісінен кейінгі мәтіннің ... ... ... ... тіліндегі бағдарлама бірнеше файлдардан және бірнеше
модулдерден тұруы мүмкін. Бағдарламаға ... тек бір файл GOAL ... Әр ... ... файлдан тұрып, бір файл негізгі болып табылады.
Бағдарламаның негізгі файлына басқа файлды қосу ... ... ... командасын қосып файл жолын жазу керек. Мысалы: include “PROCES.
PRO?” ... ... ... include ... ... бір ... ... предикаттары және бекітулері.
Турбо Пролог бағдарламасында әрбір предикаттар ... ... ... ... мәндер жиыны домен деп аталады.
Турбо Пролог бағдарламасында 8-стандартты домендік шамалар ... 1 ... ... ... 2 ... (-31999;+32000 интервалдағы) бүтін сандар;
real- 8 байты бөлшек сандар;
string- 64 байты ... ... ... ... ... ... аттар;
ref- ішкі мәліметтер қорында қолданылатын сандар;
file- файлдар.
Шамаларға мысалдар келтірейік:
Жолдар: «N1 ... ... ‘a’, ‘q’, ... сандар: 0,-12,32000.
Бөлшек сандар: -0.23; 12.5; 12.300; 4.500.
Турбо Пролог тілінде 16-ық ... ... ... ... ... ... ... бір назар аударатын жайт, әріп бір тырнақшаға ‘a’, ал ... ... ... ... ... DOMAINS ... төмендегідей сипатталады жаңа_типтің_аты
= сипаттаушы,
Мысалы:
name= symbol
title= string
radius=real
Жаңа шамалардың аттарын үтір арқылы ажыратады.
Year, age = integer.
Күрделі домендік шамалардың сипатталуы келесі бөлімде қарастырылады.
Барлық ... ... ... ... ... GLOBAL ... сипатталуы тиіс.
Орныққан предикатты сипаттаудың қажеті жоқ, өйткені ... ... ... алдын ала жазылып қойылған. Орныққан предикатты белгілі ... ... ... ... ... керек. Орныққан предикаттар
жеке дара өзіндік мүмкіндіктері бар және ... ... ... алу мүмкін
емес. Мұндай предикаттардың бар болуы Пролог тілінің нақтылы бағдарламалық
тіл екендігін байқатады.
Қолданушының беруімен сипатталатын предикат:
предикат_аты ... ... ... ... ... ... ... ажыратылып жазылады.
Предикаттарды сипаттауда ешқандай белгі қойылмайды. ... көп ... ... ... ... (Pentium)
likes (alia, apple)
Предикат аргументтерінің саны - арность деп аталады. Турбо Пролог тілінде
әртүрлі шамадағы, әртүрлі аргументтерден тұратын бір ... ... ... (integer, real)
factorial (integer, real, integer, real)
get_number (integer)
get_number (real)
print_list (list_of_integer)
print_list (list_of_string)
Домендерді ... және ... ... ... ... ... ... фактілер мен тәртіптерге бөлінеді. Факт –
деп сипатталуында шарт болмайтын бекіту.
Мысалы:
likes (alia, apples).
likes (X, oranges).
man (“Иван”)
car (“жигули”).
for_sale ... - бұл ... шарт бар ... Әр ... басы және ... ... немесе “:-“ байланысымен байланысады. Егер денесі бос болса, ... ... ... ... ... Ереже басы предикаттар ... ... ... егер ... ішкі ... денелері ақиқат болып, ішкі
мақсаттардың тізбегі конъюкция болып табылса. ... ... ... ... ... ... ... Пролог тілінде and
немесе “,” ... ... ... ... ... (Х), белгісіз (Y) бір нәрсені сатып (can_bay) ала-
алады, егер ... ... (man) адам ... ал белгісіз бір нәрсе (car)
автомобиль және ол автомобиль ... ... ... ... (Х, Y) if man (Х) and car (Y) for_sale ... жиі ... ... (Х, Y):- man (Х), car (Y) for_sale ... ... тілі өте ... тәртіптерді қолданатын дизъюкциялық шарттарды
сипаттай алады. Дизъюкциялық шарттар тәртіп денесінде or ... ... ... ... ... ... автомобильмен қоса компьютер сатып алғысы келсе:
can_bay (Х, Y) :- man (Х), car (Y) for_sale (Y).
man (Х), computer (Y) for_sale ... ... ... үшін ... ... ... келтірейік:
can_bay (Х, Y) :- man (Х), car (Y) for_sale (Y).
can_bay (Х, Y) :- man (Х), computer (Y) for_sale ... ... ... ... ... ... екі шартқа
бөледі, сол себепті дизъюнкциялық тәртіптің ішкі мақсаты max (X)
max (X, Y, Z):- X>Y, Z=X.
max (X, Y, ... ... ... it_is (“сүтқоректі”). it_is (“жыртқыш”),
has (“терісінде”, “жолақтар”).
animal (“сілеусін”):- it_is (“сүтқоректі”), it_is ... ... ... ... CLAUSES ... ... Әрбір сипаттау нүктемен
аяқталады. Турбо Пролог тіліндегі бекітулер бір ... ... бір ... ... соң бірі ... керек. Турбо Пролог
тіліндегі ішкі мақсаттардың жазылу тәртібі бойынша тақырыптың сол жағына
жазылып, бағдарламаның ... ... ... білесіздер Пролог тілінде жазылған бағдарламаның ... ... ... берілгенен кейін жүйе алдын-ала
сипатталған бекітулерді қолдана отырып ... ... ... мақсатты дәлелдегенде немесе жүйе дәлелдей алмайтын жағдайда жұмысын
тоқтатады.
Мақсат - үтір арқылы ажыратылған предикаттар тізбегі. ... ... ішкі ... деп ... Пролога мақсатты тағайындаудың екі түрі бар. Бірінші мақсатты GOAL
бөлімінде тағайындау және бұл мақсат ішкі деп ... ... ... ... кезде мақсатты беру. Бағдарлама орындау кезінде ...... деп ... ... ... ... атаулар ағылшын әріптерінен
тұрып, 250 таңбадан аспауы керек. Бос орын ... ... ... тағайындағанда қолданылмайды. Компьютерді бөліп жазуда «_»
белгісін ... ... ... ... ... предикат қолданылып, берілген жол
атауы болатындығын тексереді.
isname (Str)
Егер Str жолы атау құрылымын ... онда is name (“it ... ... кері ... ... ... ... isname (“it_is”) дұрыс, ал isname (“it is”) мақсаты дұрыс
емес. Бір-бірінен ажырату үшін, айнымалылар ... бас ... ... ... ... қою ... Пролог бағдарламасында айнымалылар басқа бағдарламалау тілдері сияқты
сипатталмайды. ... типі ... ... тізімінің орналасу
ретті немесе берілген мәні бойынша анықталады. Мысалы Х-айнымалысы ... apples) ... likes (symbol, symbol) ... symbol ... ... free (X) ... егер Х-айнымалысы бос болса, ал кері ... ... ... ... “=” ... мысалы Х=10 өрнегінде,
Х-тің айнымалы екендігін көрсетеді. Егер Х-айнымалысы бос ... ... ... кезде Х-тің мәні 10-ға тең. Егер орындалатын амал
теңдік болса, онда Х=10 шарт ... ... True ... False ... Пролог бағдарламасында глобальді айнымалылар ... ... ... бір ... ... ... кіретін,
предикаттар арасындағы мәндер алмасуы, тек қана аргументпен айнымалы
арасында жүреді.
Терістеу фундаментальді логикалық ... бірі ... ... ... бағдарламасында логикалық терістеу операторы not кілтік сөзі арқылы
тағайындалған.
Бағдарламадағы терістеу операторы not () форматына сәйкес. Предикат
ақиқат, егер ... ... ... ... ... ... country (string) предикаты Азия елдерін сипаттап, border ... - ... ... ... ... келесі бекітулерді берсе.
country (“Kazakhstan”)
country (“China”)
country (“Russia”)
country (“Kirgisia”)
border (“Kazakhstan”, “Russia”)
border (“Kazakhstan”, “Kirgisia”)
Егер біз барлық ... емес ... ... келсе, келесі мақсатты
қолданамыз:
country (C1), country (C2), not (border (C1, ... біз ... мен ... елі шекаралас болатындығын тексерейік. Бұл
үшін біз келесі мақсатты ... (border ... ... ... жауабы Yes (иә), өйткені берілген ... ... ... ... ... ... қарастырайық:
not (border (“Kazakhstan”, “Russia”)).
Сұрақтың жауабы No ... ... ... және ... ... ішкі мақсаттар дұрыс:
not (border (Х,Y)),
not (S= “end”).
Терістеу бекітуінде барлық айнымалылар анықталған болу ... Тағы ... ... ... бағдарламасындағы терістеу операторы,
математикадағы терістеу амалымен толық ... ... ... ... ... ... Мысалы мақсатты берсек
not (country (“Бельгия”)),
онда жүйе жауабы ақиқат. Жүйе жауабына қарап «Бельгия» мемлекет емес деп
түсінуге ... ... ... Пролог бағдарламасында «иә» жауабымен
«Бельгия» ... ... ... ақпарат жетіспейтіндігін
көрсеткісі келеді. Бұл жауап болуы үшін ... ... ... ... ... дәлелдеудің орнына қарама-қарсы бекітуді дәлелдеуге тырысып, егер
дәлелдеу мүмкін болмаса ... ... ... деп түсінеді.
Енгізу және шығару предикаттары Пролог ... ... ... ... енгізуге арналған предикаттарды қарасттырайық:
Жолды енгізу:
readln (StringVariable) (String)-(o).
StringVariable -айнымалысына перне тақтадан ... ... ... ... ... (IntgVariable) (integer)-(o)
IntgVariable -айнымалысына перне ... ... ... ... санды енгізу:
readreal (RealVariable) (real)-(o).
RealVariable -айнымалысына перне тақтадан ... ... ... ... ... ... -айнымалысына перне тақтадан енгізілген таңба
меншіктеледі.
Термді енгізу:
readterm (DomainName Term) (Domain Name, ... ... ... ... ... ... Егер Term
айнымалысының мәні бар болса, онда мән енгізілген термімен теңестіріледі.
readterm предикатының орындалуын ... ... ... ... (string).
Онда біз readterm предикатын қолданып мақсатты бере аламыз:
Readterm (cities, X), Write (X).
Егер ... ... ... онда ... тақтадан терілген термнің
мәнін қабылдайды. Мысалы city (“Алматы”) деп енгізсек, онда Write предикаты
city (“Алматы”) деп шығарады. Егер Х ... мәні Х= ... онда ... ... ... readterm предикатының жұмысы
нәтижесіз болады.
Пернені сұрау:
keypressed.
Бұл предикатың параметрлері болмайды. Предикат перне тақтадағы ... ... егер ... ... ... ... ал ... болады.
Пернетақтадағы басылған таңбаны оқыту предикаты:
inkey (CharVariable) (Char)-(o).
Егер ... бір ... ... inkey ... оқып ... жазады, әйтпесе fail нәтижесінде шығарады.
Inkey предикатын қолдану тәртібі:
Ready (X):- inkey (Y), X=Y,!.
Таза жол енгізу:
nl.
nl предикаты ... ... үшін ... ... ... | Constant*).
Write-предикаты экранға барлық тұрақтылар мен айнымалыларды шығарады.
Форматталған мәліметтерді шығару:
Writef (FormatString, Variable | Constant*).
Алғашқы Writef ... ... ... шығару форматына
арналған. FormatString жолы жай таңбаларды және ... ... ... ... ... ... d- жай ондық сан (таңбалар және бүтін).
% u- таңбасыз бүтін (таңбалар және бүтін).
% R- мәліметтер қорындағы сілтеу номері.
% X- ұзын ... сан (жол, ... ... ... ... x- ... сан (таңбалар және бүтін).
% s- жолдар (аттаулар және жолдар).
% c- таңба (таңбалар және бүтін).
% g- ... ... ... ... e- экспоненциальді пішіндегі бөлшек сандар.
Мысалы келесі бекіту берілсе
Writef (“X=%s Y=%d Z=%g”, X, Y, Z), онда ... мәні жол, Y ... Z- ... сан ... шығады.
Осы кезге дейін біз сан, жол және таңбалар түріндегі жай ... ... ... жай ... күрделі объектілерге
құрастыруды қарастырайық.
Құрама объектілер деген не?
Құрама объектілер функтор және объектілерден құралып, осы ... ... ... ... ... ... ... береді. Мысалға 12 қараша 2005 жыл ... Бұл ... үш ... ... күн, ай, жыл ... Жай ... мерзім бір бірлік болып, ағаш құрылымынан тұрады.
Құрама объекті түріндегі мерзім көрінісі.
Прологта бұл ақпаратты бір құрама ... ... ... ... ... ... объекті date атынан басталып, үш ... ... тиіс ... ... ... ... ... тілінде
функтордың аты болып, құрама объекті түрінде көрсетіледі және аргументтерін
бір объектіге байланыстырады.
Құрама объектілердің аргументтерінің ... ... ... ... Мысалы, Қойлақова Алияның туған күні туралы ақпарат келесі түрде
болуы мүмкін:
birh_day(person (”Қойлақова”, ”Алия”), date (23, ... ... ... birh_day ... ... ... ... екі құрама
объектіден person (“Қойлақова“, ... және date ... ... ... ... ... DOMAINS бөлімінде сипатталады. Әр обьектінің
өзіндік домендік шамалары бар. Егер біз кітап құрылымын сипаттағымыз ... DOMAINS ... жаңа ... шаманы анықтауымыз керек. ... = ... title, year), ... ... ... ... - домендері келесі түрде болады:
author = string
title = strihg
year = ... ... ... ... мен ... ... объектлерді сипаттасақ:
persons = person(string, string).
dates = date(integer, string, integer),
онда туған күні ... ... ... ... болады:
birth_days = birth_day(persons, dates).
Құрама обьектілерді теңестіру
Құрама обьектілерді жай айнымалылар және құрама ... ... ... ... ... иелері туралы ақпарат болса
фактілері келесі ... ... ... ... и ... ... (“Төребат”, “Гүлжазира”),
book(“Р.Джованволи”, ”Спартак”, 1988)).
Л.Н.Толстойдың “Война и мир” кітабын кім ... ... ... ... book(“Л.Н.Толстой”, “Война и мир”, _)).
Есептеулерден кейін X-айнымалысының мәні
Person(“Қойлақова”, “Алия”),
болып байланысады.
X=person(“Қойлақова”, “Алия”).
Гүлжазирада ... ... ... бар сұранысы:
has(person(“Төребат”, “Гүлжазира”), book(_, X, ... ... ... кейін біз Х=”СПАРТАК” нәтижесін аламыз.
Альтернативті домендер.
Бір ... ... ... ... ... ... типттер болса, онда ... ... ... ... ... ... ... түрде болады:
domain = alternative1(D1,D2,…,Dn);
alternative2(D1,D2,…,Dn);
.
.
.
alternativeN(D1,D2,…,Dn);
Мұндағы alternative1,…,alternativeN - туындалған әртүрлі ... - ... ... ... ... ... “;”-нүктелі
үтір (or) “немесе” амалына эквивалентті.
Егер alternativeN функторында аргументтер болмаса, онда ... ... ... ... ... ... ... Алияда кітаптан басқа күйтабақ (record) және велосипеді (bicycle)
бар –деген ақпаратты ... ... ... ... ... ... ... болады.
things = book(author, title, year);
record(author, title, type);
Мұндағы type - күйтабақтағы музыка түрі анықталса және symbol ... ... things жаңа ... ... үш ... түрін
біріктіреді. Алғашқысы book - функторы, екіншісі - record, ... ... ... екі ... үш ... ал ... болмайды. Енді
has предикатын сипаттап
has(persons, things),
келесі фактілерді алуға болады:
has(person (“Қойлақова“, ”Алия “),
book (“Р.Джованьоли “, ”Спартак”, 1998)).
has(person (“Қойлақова“, “Алия ... ... ... ”The king of ... ... ... ... (“The Beatls“, “Abbey road”, popular)).
has(person (“Қойлақова”, “Алия“), bicycle).
Бейнелеу және ... ... тілі ... ... рекурсияны қолданып “ағаш” шамасындағы
мәліметтерді анықтайды. Осы ... ... ... шама ... түрде
болады:
treetype = tree (string, treetype, treetype); empty
Осыған сәйкес ағаш сипаттауы tree және empty ... ... ... ... жол және екі ... ал ... ... Ол бос ағашты және ... ... бір ... tree және empty ... ... ... ... таңбалары болмайды және бағдарлама құрушы өзі береді.
moe_derevo = derevo(string, moe_derevo, moe_derevo); pustо
Өрнекті қарастырайық (a+b)*(c-d).
6.2. Сурет. Ағаш арифметикалық ... ... ... бұл ағаш ... түрде болуы мүмкін:
tree (“a”,
tree(“+”,
tree(“a”, empty, empty),
tree(“b”, empty, empty)),
tree(“_“,
tree(“c”, empty, empty),
tree(”d”, empty, empty))).
Негізгі амалдардың осы ... ... ... ... ... ... қозғалатынын қарастырамыз. Предикат traverse аргументі
ағаш(treetype) болатын және ағаштың төбелеріне әсер ... ... ... ... айланып өту келесі рекурсиялық
ережемен беріледі:
traverse(empty).
traverse(tree(X, Y, Z)) :- processing(X),
traverse(Y),
traverse(Z).
Ағашты айланып өту ... егер ағаш бос ... онда ... істеме (бұл жағдай бірінші бекітуге
сәйкес traverse(empty));
- әйтпесе ... ... ... ... мақсатты орындау processing(x)) және
сол жақ ішкі ағашқа қозғалысты іске ... оң ... ... Мысалы
жоғарыда сипатталған ережелерді ... ... ... ... ... Бұл үшін ... ... келесі түрде анықтау керек:
processing(X) :- write(X,”” ).
Мақсатты есептегеннен кейін:
traverse(tree(“*”,
tree(“+”,
tree(“a”, empty, empty),
tree(“b”, empty, empty)),
tree(“_“,
tree(“c”, empty, empty),
tree(“d”, empty, ... ... ... ... ... + a b – c ... ағашты өсіру және құруды көрсетейік. Бір N төбесінен тұратын
ағашты құру үшін келесі ережені қолданамыз
create_tree(n, tree(n, empty, ... ... T) ... ... T = ... empty, ... Келесі ереже ағашқа сол жақ ішкі ағашты ... tree(A, _, B), tree(A, X, ... үш ... ... - ... Ол алғашқы ағашты сол жақ ішкі
ағаш ... ... ... ... және ... ... ... туындайды.
Егер біз tree (“a”, empty, empty) сол жақ ішкі ... ... ... Бұл үшін мақсатты беру керек:
insert_left (tree (“a”, empty, ... ... empty, ... ... ... ... мәні ... болады.
tree (“t”, tree (“a”, empty, empty), empty).
Ағашқа сол жағынан ішкі ... ... үшін ... ... ... (X, tree (A, B,_), tree (A, B, ... бір байқайтынымыз үш ереженіңде денесі болмайды. Ережелердің
орындалуы сәйкес орындағы мәндерді ... ... ... ... және ... ... онда қадам-қадам бойынша
құруға, ал traverse тәртібі болса ағаштың төбелерін өңдейді.
2-ТАРАУ. ТУРБО ПРОЛОГ ... ... ... ... ... ... ... ПРОЛОГ ЛОГИКАЛЫҚ ПРОГРАММАЛАУ ТІЛІНІҢ ЗЕРТХАНАЛЫҚ ЖҰМЫСТАРЫ
Турбо Пролог логикалық программалау тілің жоғарғы оқу ... ... ... ... ... курсқа 2-кредит бөлінеді. Біз осы 15 сағатқа
10 - зертханалық жұмыс дайындадық.
№1 ... ... ... ... ... программалау тілінің ортасымен танысу.
Мақсаты: Турбо Пролог логикалық ... ... ... ... ... ... принципін қарастыру, командаларының қызметімен
танысып қолдану.
Турбо Пролог ортасы (жалпы мағлұмат)
Турбо ... ... ... ... ... ... (1.1сур.)
пайдаланушыға 7 команда көрсетіледі:
1. Бағдарламаны іске қосу (Run).
2. Бағдарламаның берілуі (Compile).
3. Бағдарлама мәтінің ... ... ... ... ... ... ... жұмыс (Files).
6. Жүйені баптау (Setup).
7. Жүйеден шығу (Quit).
1.1 сурет
Турбо Прологтың терезесінің құрлымы
Бір командадан екінші командаға өту оңай. Команданы ... екі ... ... пернені басу, ол команданың атауының бастапқы әріпі. Edit
командасын басу үшін Е пернесін басу жеткілікті. ... ... ... Esc пернесін басыңыз.екінші тәсілі мәзір бойымен сілтеуіштер арқылы
қозғалып Enter пернесін басып команданы ... ... ... Esc ... ... Run ... қосып,
Message терезесіндегі жолдарға назар аударыңыз және Dialog терезесіндегі
(1.2сур.) ... ... ... ... ... терезесіндегі бірінші жолы 1-зертхана.бағдарламасының берілуін
көрсетеді, бағдарламаның берілуі Run тобының іске ... ... ... жүреді. Екінші жолы hello предикатының берілуін көрсетеді.
Бағдарламаны дискке жазу үшін Esc батырмасын ... ... ... тобымен ондағы Save тобың таңдаймыз. Нәтижесінде файлдың өздігінен
қойылған аты (WORC.PRO), немесе сіз қойған файл аты ... ... ... ... ... қою ... бағдарламада 3 түрлі сөйлемдер бар (clauses): факт,шығару
ережесі, мақсат. Әрбір сөйлем ... ... ... ... ... екені сөзсіз.
likes(mary,apples). /*Мэри алманы ұнатады*/
немесе
mail(bob) ... /*Боб ... ... ... ... ... болса */
father(X,Y),mail(X). /*Баріне X жәнеY,X Y-ң әкесі болады, егер X , ... ... және Х-ер ...... ... қандай бекітулер ақиқат екенін ... ... ... /*Энн ... баласы ма?*/
жауап беріледі
true ... мына ... ... ... кім?*/
жауап беріледі
X=Bob /*Эннің әкесі ... ... ... факт және ... ... арқылы жауап беруге
тырысады.Ол бағдарламаны жоғарыдан төменге, оңнан солға ... ... ... ... сарапталады және факт немесе шығару
тәртібі ізделінеді, соның көмегімен мақсат орындалу мүмкін.
2-Мысал:
Объектілер(индефикаторларға) атауларына ... ... ... ... ... әріптер,сандар және ерекшеленген символдар болуы мүмкін,
және оның 1-ші ... сан ... ... константа атаулары кіші әріптен басталуы керек.
Атауда бір ... кіші және ... ... ... ... қатынасқа мысал:
domains
s=symbol/*s объектісінде символ типі бар*/
predicates
parent(s,s)
female(s)
male(s)
mother(s,s)
father(s,s)
ancestor(s,)
child(s,s)
clauses
parent(pam,bob)./*Пам-Бобтың ата-анасы*/
parent (tom,bob).
parent(tom,liz).
parent(bob,ann).
parent(bob,pat).
parent(pat,jim).
female(pam)./*Пам -әйел*/
female(liz).female(ann).female(pat).
male(tom)./*Том -ер*/
male(bob).mail(jim).
child(X,Y):-/*Y Х-тің ұрпағы,егер X ,Y ата-анасы ... Y-тың ... Y-ң және ... ... ... Y-ң және Х-ер */
parent(X,Y),mail(X)./**/
ancestor(X,Z):- /*Х Z-ң атасы,егер*/
parent(X,Y),ancestor(Y,Z)./*Х Z-ң ата-анасы болса*/
ancestor(X,Y):-/*X Z-ң атасы,егер*/
parent(X,Y),ancestor(Y,Z)./*X Y-ң ата-анасы болса, және Y Z-ң ... ... ... ... ... ... құрыңыз.
2.Ағаштың түрін анықтайтын программа құрыңыз.
3. Жеті ата құрлымын анықтайтын программа құрыңыз.
4. ... ... не ... т.с. түрлерін анықтайтын программа
құрыңыз.
5. Көршілес мемлекеттерді анықтайтын программа құрыңыз.
№2 Зертханалық жұмыс
Тақырыбы: Турбо Пролог ... ... ... предикатар
Мақсаты: Турбо Пролог бағдарламасында предикттар, амалдар, ұғымдар әдіс−
тәсілдерін қолданып, теориялық білімімізді тәжірибе ... ... ... ... ... директорияның файыл каталогын ашып қарау үшін, бас ... ... ... ... ... таңдап алыңыз. Экранда PRO
директориясының барлық файылдары шығады. Егер сіз ... ... ... ... онда сол ... ... ... Enter
пернесін басыңыз. Жүйе жауап ретінде сізге керек файыл маскасын сұрайды
(File mask). ... ... *.PRO ... тұр. Осы ... ... ... өзіңіздің масканызды теруге болады. Enter пернесін басқаннан
кейін, терезеде масканы ... ... ... ... ... ... ... ... ... енгізу
Редактор терезесіне бұрын құрылған файылды енгізу үшін бас мәзірдегі Files
командасындағы Load командасын басамызЕгер файылдың ... ... ... онда арнайы терезеде .PRO.директорияның файыл аттарының
тізімі шығады.Сілтеуіштер ... ... ... ... атын ... Enter
пернесін басыңыз(2.2сур).Егер сіз файыл атын пернетақтадан ... оның ... жазу ... ... ... ... Пролог редакторымен жұмыс істей отырып кез - келген командасы туралы
ақпаратты F1 функционалды пернесін басыңыз. ... ... ... Help
мәзірі пайда болады, егер сіз бірінші ... ... онда Help ... ... ... ... кішігірім командасы туралы мәлімет береді.
Shift-F10 комбинациясын басу арқылы, терезенің көлемін экран көлеміне дейін
ұлғайтуға болады; Shift-F10 қайталап басу ... ... ... ... ... жаңа ... файыл құру керек болса,ал редактор
терезесінде басқасы орналасса,онда терезені бұл файылдан ... ... бас ... Files командасын,ондағы Zap file in editor командасын
таңдап басыңыз. Жүйе дәлелдеу сұрайды. Егер Ү ... онда ... ... ... жаңа ... атына арналған терезе пайда болады. Онда ... ... Enter ... Егер ... атау ... ... ескі атымен
аталады. Enter басқаннан кейін, ... ... ... ... ... тұрады. Енді оны Edit-ке апарып, Enter басу керек, содан кейін ... ... ... ... ... ... сұхбат терезесін шығарады.
Программаның берілген текстін енгізу, жүзеге асыру және дискке ... ... ... ... ... Enter ... ... келдіңіз!\n в PDC Prolog,\n","",Name,"!").
Нәтиже: Қош келдіңіз! в PDC Prolog, Динара!
Программа мәтініне әдейі қате енгізіп, бағдарлама жолын оқи ... ... ... жөндеңіз.
яяwidctlpaяяaspalpha predicates
hello.
goal
hello.
clauses
hello:-
makewindow(1,7,7," Менің алғашқы бағдарламам ",4,56,14,22)
nl, write("Атыңызды енгізіңіз,n"," Enter түймесін басыңыз."),
cursor(4,6),
readln(Name)nl,
write("Қош келдіңіз \n в PDC ... 423 Syntax ... ... ... редакторына кіріңіз. WELCOME бағдарламасын енгізіңіз және
оған nl,write(“Have a nice day.”) бұл ... ... ... to ... жолдарын қосыңыз да, программа нәтижесін тексеріңіз.
2. Өзіңіз жайлы қысқаша ... ... ... ... құрыңыз.
3. Жаңа бір файыл құрып,”3-тапсырма” деп сақтап ... ... ... ... ... ... оны қайтадан бастапқы қалпына келтіріңіз.
5. Сұхбат терезесі көмегімен ... ... ... ... программа құр.
№3 Зертханалық жұмыс
Тақырыбы: Логикалық бағдарламадағы предикаттар мен ... ... ... ... Турбо Пролог ... ... ... ... ... орныққан еңгізу/шығару предикаттарын қолдану.
Турбо Прологтағы енгізу/шығару предикаттары (жалпы мағлұмат)
Прологта енгізу ... ... жазу және оқу ... ... жағдайда Пролог бағдарламасы бірнеше файлдармен ... ... keyboard ... және ... screen
(экран)) іс–әрекеттеседі. Ол бірнеше енетін файылдарды санайды да, ... ... ... ... әр мезеттінде тек екі файыл ғана “белсенді”
(“активный”) біреуі енгізуде, екіншісі ... ... ... бұл екі
ағым терминалға сәйкес келеді. Ағымдағы енетін ағын ... ... ол ... арқылы readdevice(name_of_file). Осындай мақсат
әрқашанда табысты (егерде name_of_file файылы дұрыс болса), жағымсыз әсер
ретінде ... ... ағын ... ... ... ... мақсатты және нәтижені тексере отырып ... ... ... В.Э.","IBM PC для пользователя","ФиС",1988).
book("Петухов О.А.","Проектирование ОРБД","Судостроение",1984).
book("Петухов О.А.","Объектно-реляционные ... ... ... ... ... ... ... В.И.","Дискретные структуры","СЗПИ",1999).
Нәтижесі : X= Proektirovanie OR BD, Y=SUDOSTROENIE, Z=1984
X=Object models of DATA, Y=SZPI, ... CMO, Y=SZPI, ... Prolog, Y=SZPI, ... ... ... OR ... models of ... CMO
X=PDC Prolog
4 Solutions
E=Petuchov O.A., X=Object models of DATA, Z=1987
E=Petuchov O.A., X=Modelirovanie CMO, Z=1989
E=Petuchov O.A., X= PDC Prolog, Z=2000
E=Ankudinov G.I., ... theory, ... V.I., ... ... Z=1999
5 Solutions
Тапсырмалар
1. Программа денесіне және ... ... ... ... ... Туысқандық қатынасты анықтайтын программа жаз.
3. Қазақ хандарының қай жылдары және реттін анықтайтын программа жаз.
4. Қазақстандағы ... ... саны мен ара ... ... ... ... ... ағаштардың түрі және ерекшеліктерін анықтайтын
программа жаз.
№4 Зертханалық жұмыс
Тақырыбы: Рекурсия және ... ... ... ... ортасында рекурсивті есептерді шешу әдістерін,
арифметикалық амалдардын іс−жүзінде қолдану.
Көптеген қарапайым ... ... ... ... ... мүмкін. Мысалы, факторларды есептеу циклдардың көмегімен
орындалып, тізбектер сандарға көбейтіліп, керекті ... ... ... процедура Паскаль тілінде жазылып, төменде көрсетілген.
Мысал. Факториалды есептеу.
real factorial (N: integer);
var i: integer;
f: real;
begin
i:=o; f:=1;
While (i







1. ... ... ... мен
логикалық амалдар


 



 



Пролог тілінің
негізгі қолдану ортасы







... ... ... ... ... және ... айнымалылар







Ереже








Үйлестіру (унификация)





ЭЕМ үшін есепке бағдарлама құрудың негізгі қиындығы машина ... ... ... ... олардың әртүрлі ойлауында. Бағдарламалау
тілдерінің негізгі даму ... ... ... өте ерекше
алшақтайды. Логикалық бағдарламалау пікірлерге негізделіп, компьютердің
операциялық терминдеріне адамды ... ... ... ... тән
нұсқаларды орындату.
Дәстүрлі тілде жазылған бағдарламалар, алгоритімнің жазылуына
қарай мәліметтерді белгілі ретпен өңдейді.
... тіл ... тіл деп ... Процедуралық тілде
есептің шешімі алгоритім құруға және жетілдіруге жұмсалады.
Логикалық бағдарламалау тілдерінде ... ... ... ... тіл ... ... қалай шешілетінін
сипаттап көрсетсе, логикалық ... ... шешу үшін ... ... ...
Есептің шартынан және құрылымынан ... ... ... ... ... тіл» - деп ...
Логикалық бағдарламалау мәліметтер қорын құруға, сараптау
жүйелерінде, таңбалы есептерді шешуге қолдануға ...
... ... ... және ... ... сипаттағандай жазылмаса, бағдарлама екі бағытта да
жұмыс істей алады. Мысалға логикалық бағдарлама дайын ... ... ... және ... бағдарлама жазбай нәтижеден дайын мәліметтер
алуға мүмкіндік береді.
... ... ... және толық көрінісі,
мәлімететтердің есепті ... ... және ... логикалық
аксиомасы болатындығын айқындайды. Мұндай бағдарламаның орындалуы есептің
қойылымында қарастырылған логикалық бекітуінің ... ... ... ... деп ... ... Пролог
тілінің негізгі қолдану ортасы:

... ... ... ... алу;
... ... және ... зерде ортасындағы зерттеулер;

ЭЕМ-мен табиғи тілде қатынасу (табиғи-тілдік интерфейс);
Мәліметтер қоры;
Робот қимылдарының жоспарын және ... ...
... ... ... ... конверторын
жазу;
Автоматтандырылған жобалау жүйелері (САПР).

Пролог тілі бағдарламма ... ... ... ... ... ... және құрылымдалмаған бағдарлама ... ...
... ... ... ... тілі Жапонядағы ЭЕМ-
нің бесінші ... ... тіл ... әлемнің осы тілге деген
қызығушылығын туғызды, бірақ жоба қойылған мақсатқа жетпеді.



Экзистенциялдық сұрақтар

Сұрақтағы айнымалылар кванторлармен ... ... ... ... Х), ... ... осы ... Майра ұнататындығын
көрсетеді. Жалпы жағдайда сұрақ Р (Т 1, Т ... үшін Х 1, Х 2,...Х к ... ... Р (Т 1, Т 2,...Т ... Х 1, Х 2,...Х к бар болады.
Шығарудың тағы бір ...... ... О
алмастыруындағы Р экзистенциалды сұрағы РО қатынасын береді. ... ... ... ... болып, ұнатады (Майра, Х) ақиқат егер
{Х=алма} болса.
... ... ... негізгі емес сұрақты іздеу
процедурасы, сұрауға мысал болатын фактіні ... ... ... ... егер ... ... ... табылмаса, ал табылса
«Yes».
Экзистенциалді сұрақтың жалпы жағдайда бірнеше жауабы ... ... ... қосу (Х,У,2) сұрағының шешімдері: {Х=0, У=2}, {Х=1,
У=1}, {Х=2, У=0}. Х және У ... ... ... ... ... ... аударыңыздар.
Сұрақ қосу (Х,Х,2), екі сан екі қосындысын беру үшін сәйкес
болса, онда ... {Х=1} ... ... ... ... маңызы бар. Мысалға егер біз
бағдарламаға хабар беретін, кез-келген санды 0-ге ... 0-дің ... ... ... ... қосу ... ... көбейту
(0,1,0), көбейту (0,2,0) түрінде сипаттай аламыз. Бұл фактінің ... (0,Х,0) ... ... ... болады.
Біздің түсінігімізде фактідегі айнымалылар байланысы айқын емес.
Мысалға ұнатады (Х, алма) фактісінің ... Х ... ... ... ... ... ... Р (Т 1, Т 2,...Т
n) фактісін, Х 1, Х 2,...Х ... ... ... х і ... ... Р
(Т1, Т2,...Тn) фактісі орындалады деп
түсінеміз. Фактінің ... ... ... ... ... болады. Мысалға ұнатады (Х, алма)-жағдайынан ұнатады (Алия, алма)
түсінігін аламыз.
... Р ... ... ... 0 ... ... ... аламыз және бұл шығарудың үшінші ... деп ...
... ... ... ... екі белгісіз
объектіні бір-біріне дәл келтіруге болады. Дәл келтіру үшін бір ... атын ... ... Қосу ... ... ... сол ... 0 болатындығын көрсетеді. Айнымалыларды керісінше қолдану,
«әркім өзін-өзі ... ... - ... сәйкес келіп, ұнатады (Х,Х)
фактісін береді.
Негізгі сұраққа жауап іздеуде фактінің кванторлық ... ... ... ... бола ... факт ізделінеді. Мысалға
(0,2,2) сұрағының жауабы факт ... қосу ... ... ... ... ... іздеуде фактіні қолдану жаңа
ұғымды талап ...
А және ... ... ... егер С ... А және С мысалы В. Басқалай
айтқанда О1 және О2 алмастырулары ... С=АО ... ... ...
Мысалы қосу (0,3,У) және қосу (0,Х,Х) мақсаттарының жалпы мысалы
қосу (0,3,3), мұндағы {У=3} қосу (0,3,У) ... және {Х=3} қосу ... ... жағдайда сұрақа жауап іздеуде фактіні қолдану, сұраққа
және фактіге жалпы мысал ...
Егер ... ... бар ... онда ол жауабы болады. Экзистенциалды
сұрақтың жауабы, ... ... ... ... ... ... екі логикалық нәтижені ... ... ... ... ... нақтылауда шығару, мысалдан ереже көмегімен сұрақты шығару.



Канъюктивті сұрақтар және ... ... ... дейінгі маңызды талдаудағы талқыланған сұрақ канъюктивті
сұрақ. Канъюктивті ...... ... ... ... ... ... (Алия,Х), ұнатады (Самал, У) немесе
жалпы түрде Q 1, Q 2,…Q n.
Жай ... – жеке ... ... ... ... Логикалық сұрақ бағдарламадағы канъюкциялық шығарулардан тұрады және
сұрақтар арасындағы «,» үтір, «және» логикалық байланысын ... ... ... ... мақсаттар қарапайым. Мысал:


қосу (0,1,1), қосу (1,1,2).

Бұл сұрақтың жауабы 1.1. ... ... ... ұғу оңай, өйткені екі мақсатта бағдарламаның фактісі
болып табылады. Жалпы Q 1, Q 2,…Q ... ... Q і ... мақсат, Р бағдарламасының жауабы
«иә», егер әрбір Q і ... ...
... ... бір ... одан да көп ... айнымалылардан
құралып осы айнымалылар екі әртүрлі мақсатты сұрақтан тұратын жағдайда өте
қызықты. ... ... ... ... ... ... Конъюктивті
сұрақтағы айнымалылар облысы барлық конъюкция болады. Мұндай жағдайда сұрақ
р(Х),q(Х) мағынасы: «р(Х) және q(Х) үшін бір ... Х бар ... ...
... айнымалылар жай айнымалылардың мәндер облысын шектеуге
қолданылады. Мысалы: ұнатады (Алия,Х), ұнатады(Самал,Х) ... ... ... ... ... ... Р бағдарламасының
конъюктивті сұрақтары логикалық жолмен тізбектеледі, егер жалпы айнымалылар
әртүрлі мақсаттардағы бір тек сол бір ... ... ... ... ...
... сұрақтың шешімін іздеу процедурасы А
1,А ... ... ... ... ... А 1,...,А n ... ... ... ... үшін бір ғана ... ... ... айнымалылардың
ұқсастығын қамтамасыз етеді.




Ереже
Үшінші және ең маңызды бекіту ... ... ... арқылы беріліп, терминдердегі ... ... ... ... ... - бұл бекіту түрі:


А:-B1, B2,…, Bn , мұндағы n
≥0


Тақырыбы А - деп ... егер Ві- ... ... ... ... А және В ... болуы керек. Ереже, фактілер және
сұрақтар пайымдау немесе ... ... Факт - ... жеке n=0 ... ... ескереміз. Фактілер -
жекелеген пайымдаулар деп атауға болада. Ережеде фактідегідей айнымалылар
ортақ кванторлы байланыста, кванторлардың әсер ету ... ... ... ... болу ... ... ереже:


бала (Х,У) :- әке (У,Х), ер _ адам (Х).

Сәйкесінше қызы болу ... ... ... қызы (Х,У) :- әке (У,Х), әйел _ адам (Х).

... болу ... ... ... ата (Х,У) :- әке (Х, Z ) , әке ( Z , У ). ... ... ... ережені интерпретатциялайтын
екі әдіс бар. Біріншіден ереже жай сұрақтар терминінде күрделі және ... құру үшін ... ... ... ... ... бала байланысындағы ережедегідей болса, онда ... Х), ... (Х) ... ... ... шешіледі. Жаңа сұрақ бала
байланысанан және жай сұрақтардан құрылып, әке және ер адам ... ... ... ереже, ережені процедуралық талдауға алып
келеді. Ата қатынасының ... ... ... ... ... ... беру ... Х-с У-тің атасы болама конъюктивті сұрағының жауабы, Х-с ... және Z-т ... ... ... ...
... тәсіл логикалық аксиоманың интерпретатциялық ережесіне
негізделген. Таңбалар тізбегі ... ... :- ... ... бала ... ... ... Х-бала, егер У-әке Х-
ке және Х-ер адам». Мұндағы ереже басқада жай қатынас негізінде жаңа ... ... ... үшін ... Бала ... әке және ... предикатымен анықталады.
Мұндай түсінік ережесі декларативті түсінік
деген атпен ... ... ... ата ... ... ... ... «Барлық Х,У және Z, егер Х-әке Z-ке және Z-әке У-ке, онда
Х-ата У-ке».
Әйтседе ... ... ... ... ... ... байланысты, біз кейбір кездерде қолданба денесіне
кіретін, ал тақырыбына кірмейтін айнымалылардың дене ... ... ... ... ... ата ... ... келесідегідей
түсінеміз: «барлық Х-үшін және У-үшін, ... У-ке, егер ... бір ... ... У-ке және Z-әке У-ке».
Біздің қарастырған логикалық түсініктерге ... ... ... заңы қолданылып, мұндағы В және А :- В тізбегінен А тоқтама ... modus ponens ... ... ...


R=(A: - B1, B2,…, Bn) ... ...
B’2
.
.
,
B’n, А’ ... A’: - ... B’n мына ... ... ...



Ереже сәйкестігі және ... modus ... жеке ... ...
Енді ... ... және ... салдар түсінігіне толық
анықтама беруге болады.

Логикалық бағдарлама - шектелген ... ...
... ... ... Р-бағдарламасының салдары, егер Р-да негізі
мысал бола алатын қолдану табылып A: - B1, …, Bn ... ... B1, …, Bn ... салдар Р-нің және А
мысал G-нің.
Байқайтынымыз G-мақсаты Р-бағдарламасынан логикалы туындайды, тек
сонда ғана, егер G P-ның modus ponens ... ... ... сонынан пайда болса.
Сұрақтың жауабын іздейтін ... ... ... ... ... мен ... негізгі мысалы табылып,
рекурсивті ... ... ... ... ... ереже денесінің
жауабын іздейді. ... ... ... ... B1, B2,…, Bn ... және ... А=А1 және Ві, 1≥і≥n
аралығында ... ... ... ... Қалған әрбір
Ві ережелері рекурсивті түрде дәлелденеді. Мұндай ... өте ұзын ... ... пайда болды. Жалпы жағдайда керекті
негізгі мысалды табу және дұрыс ережені таңдау қиын.
Дұрыс ережені таңдаудың тағы бір ... ... ... ... ... тұрып – енімен іздеу деп атайды. Бұл амал арқылы
егер ереженің ақырғы ... бар ... онда ол ... ... бір ... ... бірі, ережені таңдауды тереңдіктен іздеу. Бұл іздеу
амалының енімен іздеу амалынан айырмашылығы дәлелдеу бар болса да толық көз
жеткізіп ... ... ... ... ... ... ақырғы
нәтижелік жол бар болса да, жолды іздеп таппауы мүмкін. ... ... ... мүмкіндігіне байланысты ... ...
... ... ережеде бала қатынасының сипатталуы нақты,
бірақ осы ұғымының ... ... бола ...
Бұл ... ... әке мен ... ... екені көрсетілмеген.
Ұғымға жаңа сипаттау қосуға болады:


бала (Х,У) :- ана (У,Х), ер (Х). ... ... ... бала ... төрт ... әке және ана жағдайларын қарастырады:


бала (Х,У) :- әке (У , Z ), әке ( Z , X ).
бала (Х,У) :- әке (У, Z ), ана ( Z ,Х).
бала (Х,У) :- ана (У, Z ), әке ( Z ,Х).
бала (Х,У) :- ана (У, Z ), ана ( Z ,Х). ... Бұл ... ... және ... ... ... Ол үшін ана мен әке ... ... ... ... Ата-ана қатынасының ереже құрылымы, әкенің немесе ананың ата-ана
болуы.
Логикалық бағдарламада кері ... ... ... кері ... ... ... ...


ата-ана (Х,У) :- әке (У,Х).
ата-ана (Х,У) :- ана (У,Х).

Бала ... ... ... ... ... ұл (Х,У) :- ... (У,Х), ер (Х).
немере (Х,У) :- ата-ана (У, Z ), ата-ана ( Z ,Х),



ер (Х).




... ... ... ... ... қос ... ережесі - процедура деп аталады.



Үйлестіру
(унификация)
Логикалық бағдарламаның есептелу моділдерінің негізін ... ... ... Үйлестіру автоматтандырылған дедукция
және логикалық шығыстың негізі болады.
... ... ... нұсқасы, егер t мысал
S-ке және S-мысал t-ға. Алфавиттік нұсқа ... ... ... ... ... ... ... Мысал: терімдер member(X, tree(Left,
X, Right)) және member(У, tree(Left, У, Z)) ... ... ...
Екі ... ... алмастыру деп аталып, терімдерді бірдей
қылады (синтаксисті сәйкес). Егер екі терімнің үйлестіруі бар ... ... деп ...
... append ([1,2,3],[3,4],List) және append([X | Xs], Ys, [X
| Zs]) үйлестірімді. {X=1,Xs=[2,3], Ys=[3,4], List=[1,Zs]}. ... ... append ... | Zs]).
... ... екі терм ... ұқсас, жалпы
мысалға қарап үйлестіру деп аталады.
Егер екі терм үйлестірімді болса, онда ең ... ... ... ... дәлелдеуі, айнымалылардың атын өзгерту дәлдігі.
Үйлестіру алгоритімі Т1 және ... ... жуық ... ... егер ... үйлестіру болса.
Егер термдер үйлестірімсіз болса, алгоритім жұмысын тоқтатып хабар береді.
Алгоритім жүйелер теңдігін ... және ... ... ... ... ... ... орналастыруға негізделген. Жұмыс басында ұяшығы бос болып,
Т1=Т2 стек теңдігі орналасады. ... ... ... ... ... ... және бір теңдік өңделеді. Цикл
аяқталады, егер стек бос болса немесе жұмыс ... бас ... ... берілсе.
S=T теңдігін есептеуге мүмкін жағдайларды қарастырайық. Қарапайым
жағдайда S және T біртекті тұрақтылар ... ... де ... Бұл
жағдайда теңдік дұрыс және еш ... ... ... Есептеулер
жалғасып стектегі келесі теңдік есептеледі.
Егер ... ... ... ... ... ... ауыстырылады. Сәйкесінше -дағы барлық кірме ... ... S=Т ... -ға ...
... ... ... егер S және Т негізгі функторлы құрама
термі болса. Мысалы f(S1,S2,… , Sn) ... , Tn) . ... ... ... ... ... үйлестіріп,
Si=Ti ... ... ... ... ... ... ... жұмыстың тоқтағаны жайлы
хабар беріліп, алгоритім аяқталады. Егер стек бос ... ... ... -құрамында орналасады.
Біз бұл жерде алгоритімнің күрделігіне ... ... ... көз ... үшін ... ... жоқпыз.
 


 

 



... ... ... және ... ... ... ... жоғары бөлігінде
(1.1.1сур.) пайдаланушыға 7 команда көрсетіледі. ... ... ... қанық бояумен бөліп көрсетілген. Себебі,пайдаланушыға ... ... сол ... ... ... ... кезден команда
орындалатының еске салу үшін бөліп көрсеткен.
... ... ... ... 7 функциясымен айқындалады:
1. Бағдарламаны іске қосу(Run).
2. ... ...
3. ... ... ...
4. Компилятордың опция тапсырмасы(Options).
5. Файлдармен жұмыс(Files).
6. ... ...
7. ... ...
... ... төрт терезеден құрылған (1.1сур.) Жоғары сол жақ бұрышта
Турбо Прологтың редактор ( Editor ) ... ... ... ... (Dialog ) терезесі, сол жақ
төменде хаттама ( Message ) ... ... ... ( Trace ) терезесі
орналасқан. Егер сіздің мониторыңыз түсті ... онда ... ... ... ... терезесіне қызыл, хаттама және трассировка
терезелеріне қара түс беріледі.
... ... ... ... мен ... қалай берілетіндігін
қарастырайық. Логикалық бағдарлама «Алия алманы ұнатады» қолданбасы ұнатады
(Алия, алма) фактісімен беріледі.
«Жазира ... ... ... ... ... ... Х) :- ... (Алия, Х) тәртібімен беріледі.
Бұл қолданбаның синтаксистік пішіні, Турбо ... ... ... жақын. Өкінішке орай Турбо Пролог тілі ... ... ... ... ... ... жазылады. Сөйлем бас әріппен басталса Турбо
Пролог тілі айнымалы ретінде түсінеді. ... ... ... ... тұжырым болу үшін, қазақ алфавитін латын алфавитіне, ал
әріптерді кіші ... ... ... Осы ... біз ... ие боламыз.
Бағдарлама 1.1. Likes предикатының
процедурасы.
likes (alia, apples).
likes (jazira, X) :- likes (alia, X).
:- ... if ... сөзі ... ... бір ... ... жағдай екі қолданба нүктемен аяқталып, ойдың
біткенін көрсетеді.
Қолданбада екі тұжырым ... ... ... ... белгілі фактіні
бейнелейді, ал екінші тұжырым шарттан ... ... ... Турбо
Прологта ереже деп аталады және жаңа фактілерді шығаруға пайдаланылады.
1.1. бағдарламасының нәтижесінде «Жазира алманы ұнатады» ... ... ...
... ... ... ... мақсатты берсек, нәтижесінде
бір фактіні аламыз. Егер ... ... ... жоқ ... ... ... мақсатты сұрайды. Мысалы: 1.1. бағдарламасын іске қосып.

likes (alia, apples) мақсатын енгіземіз.
Турбо Пролог ... ... бар ... ... Yes ... береді.
Енді біз мақсатқа likes (jazira, apples) мәнін берсек. Турбо
Пролог тілі ... ... ... ... ... ... болмай қалған жағдайға дейін ... ... ... ... ... likes (alia, apples) ... ... Пролог бағдарламасы likes терм предикаты фактідегі терммен
сәйкес, және Жазира мақсат объектісін Алия объектісімен ... ... ... өйткені бағдарламадағы Алия және Жазира
объектілері ...
... ... бағдарламасы келесі жолдағы
likes (jazira, X) :- likes (alia, X)
предикатын таңдайды.
... “ :- ” ... сол жақ ... ... ... ... ал оң жақ бөлігі ереже денесі деп ... ... ... ... ... фактімен салыстырғандай, мақсатты
ереже тақырыбымен салыстыруға тырысады, ал егер салыстыру ... ... ... ... редукцияға түседі.
Пролог бағдарламасы likes (jazira,apples) ... және ... X) ... ... ... ... ... мәні жоқ
болып кез-келген объектімен үйлестірімді. Біздің жағдайда {Х=apples} болып,
likes (jazira, X) предикатының ... likes ... ... ... ... бағдарламасы ереже болып және ... ... ... likes apples мәніне ие болғандығын анықтайды.
Келесі жолы Пролог бағдарламасы likes (alia,X) шартын ... ... ішкі ... ... Алия ... ... көре ... жаңа есепті шешуге тура келеді. Турбо Пролог бағдарламасы ... ... ... ... ... likes ... фактісіне
салыстырмалы ішкі фактіні табады. Сәйкесінше likes (jazira, X) ақиқат онда,
likes (jazira,apples) мақсаты дәлелденеді.
... ... ... тағайындалған өзіндік өте ... ... бар. ... ... тілдеріне қарағанда, Пролог
бағдарламасы өте қатал тілдердің бірі ... ... ... ... ... домендер, тұрақтылар алдын-ала
сипатталады. Әрбір бөлім ... тән ... ... ... ... ... сипаттауы басталғанша немесе бағдарлама аяғына дейін жетуі
мүмкін.



CONSTANTS


<тұрақтыларды сипаттау> ... DOMAINS ... ... ...


DATABASE [-<мәліметтер қорының аты>]



<мәліметтер қорының ... ... ...


<предикаттарды сипаттау>


GOAL


<тұжырым ... ... CLAUSES ... ...





 


1.1 сурет Бағдарламаның ортақ
құрылымы.

Бағдарламаның құрылуына ... ... ... ... ғана ... ал ... бөлімдерді қолданбаса да
болады. Бөлімдердің орындары ауысқанмен бағдарлама қатесіз жұмыс істей
береді.
... ... ... ... ... ... ... CONSTANTS бағдарламада қолданылатын тұрақтыларды сипаттау.

DOMAINS стандартты емес ... ... ... ...
DATABASE ... ... ... қолданылатын
предикаттарды сипаттау.
PREDICATES бағдарламада ... ... ... GOAL ... ... бекітулер сипатталады.

Бағдарламада GOAL бөлімінен басқа бөлімдер ... да ... да ... ... деп ... модулдерінде қолданылатын домендермен предикаттарды айтады.
Әрбір ... ... ... ... сөз қойылады.
Мысалы: CONSTANTS , DOMAINS , DATABASE , GOAL ... .
... ... ... ... предикаттың үлгісі,
аргументердің қайсысы шықпа және кірме болатындығын көрсету керек.
Мысалы:


GOAL PREDICATES ... max ... integer, integer) –(i, i, o)
length (string, integer) –(i, i) (i, o) ... Мұндағы max предикатының екі аргументі ... ... ... ал ... ... ... ... түрінде
белгіленеді. l ength предикатын екі түрлі ... ... ... Екі
аргументте белгіленген немесе біріншісі белгіленген немесе екіншісі
белгіленген.
1.1 ... ... ... ... likes (symbol, symbol) ... GOAL ... likes (jazira, apples) .

CLAUSES

likes (alia, apples) .
likes (jazira, X) :- likes (alia, X) . ... ... ... үш ... ... ... likes предикатының екі ... symbol ... ал GOAL ... CLAUSES бөлімінде берілген бекітулердің
анықтайтын мақсаты ...
... ... ... ... ... ... болады. Түсініктеме жазудың екі түрі бар. Бірінші түрі мәтінді
таңбалармен қоршау. Мысалы: /*түсініктеме*/. Мұндай ... ... бір ... көп ... ... Егер түсініктеме бір жолдан тұрса, %
-белгісі қойылады. Бағдарлама % ... ... ... бәрін
түсініктеме деп түсінеді.
Турбо Пролог тіліндегі бағдарлама ... ... және ... тұруы мүмкін. Бағдарламаға кіретін тек бір файл GOAL бөлімін
қамтиды. Әр модуль бірнеше ... ... бір файл ... ... табылады.
Бағдарламаның негізгі файлына басқа файлды қосу үшін, негізгі ... ... ... файл ... жазу ... ... include ... Бағдарламаның компиляциялау нәтижесінде include командасы барлық
файлды бір модулге жинақтайды. ... және ... ... ... ... әрбір предикаттар
аргументтерініңшамаларын көрсету керек.
Предикат аргументерінің мәндер жиыны домен деп аталады.
... ... ... ... ... ... ... char - 1 байты таңба (литера)
integer - 2 ... ... ... ... real - 8 ... ... сандар;
string- 64 ... ... ... symbol- ... ... аспайтын
аттар;
ref- ішкі ... ... ... file- ... ... ...
Жолдар: «N1 жолдың мысалы».
Таңбалар: ‘a’, ‘q’, ‘+’.
Бүтін ... ...
... ... -0.23; 12.5; 12.300; 4.500.
... Пролог тілінде 16-ық санау
жүйесіндегі сандарды жазуға болады: $A1, $S2, $fff.
Тағы бір ... ... ... әріп бір ... ‘a’, ... екі тырнақшаға алынады ‘ая’.
Домендік шамалар DOMAINS бөлімінде төмендегідей сипатталады
жаңа_типтің_аты = сипаттаушы,
... ... name= symbol
title= string
... ... Жаңа ... ... үтір арқылы ажыратады.

Year, age = integer.
... ... ... ... ... ... Барлық предикаттар қолданылмас бұрын PREDICATES немесе GLOBAL
PREDICATES бөлімінде сипатталуы тиіс.
Орныққан ... ... ... ... ... ... Пролог тіліне алдын ала ... ... ... белгілі бір мөлшерде аргументтерін беріп, тиімді
қолдану ... ... ... жеке дара ... ... ... ... Пролог тілімен алу мүмкін емес. Мұндай предикаттардың бар болуы
Пролог тілінің нақтылы бағдарламалық тіл екендігін байқатады.
Қолданушының беруімен ... ...
... ...
... ... атынан кейін, жақша ішіне үтірмен ажыратылып
жазылады. Предикаттарды сипаттауда ешқандай ... ... ... көп ... жоқта болуы мүмкін.
Мысалы:


run
computer ...
likes (alia, apple) ... ... аргументтерінің саны -
арность деп аталады. Турбо Пролог ... ... ... ... тұратын бір аттағы предикаттарды сипаттауға болады.

Мысалы:


... ... real)
... ... real, integer, real)
... ...
get_number (real)
print_list (list_of_integer)
print_list (list_of_string)

... және ... ... ... ... Жоғарыда
айтылғандай бекітулер фактілер мен ... ... – деп ... шарт ... ...
Мысалы:
hspace=10>
ҚОРЫТЫНДЫ
Логика элементтерін информатика курсына енгізу тиісті және ... іс ... және ол ... оқу ... ... ... ... есептеледі.
Өйткені заманауи білім берудің негізгі міндеттерінің бірі ... ... ... ... ойлауын дамыту айтылады. ... ... ... ... ... ... әр ... әдістері
бар: үлгілеу және математикалық әдістер, соның ішінде ... ... ... физикалық және биологиялық эксперименттер, ЭЕМ-да
ақпарат өңдеу, т.б. ... ... осы ... ... ... ... ... логикалық дұрыс болуы керек, сондықтан да ... ... ... ... ... ... үйретеді. Әрине, адам логиканың дәл
ережелері мен заңдарын білмей-ақ, тек оларды түйсікті ... ... та ... ... ... Алайда логикаға ие адам анағұрлым дәл ойлайды,
оның аргументациясы ... ... де ... ... Танымал американдық
психолог Дейл Карнеги «Қалай мазасыздықтан арылып, өмір сүруді бастау
қажет» ... ... ... ... және бұрыс ойлау салты арасындағы
айырмашылық келесіден тұрады: дұрыс ... ... ... ... ол логикалық конструктивті жоспарлауға жетелейді; бұрыс ойлау
салты қиындықтар мен жүйкенің тозуына жиі соқтырады».
Дипломдық жұмыс нәтижесінде біз ... ... ... ... ... ... және жоғарғы оқу орындарында оқыту ерекшеліктерін,
жұмыс бағдарламасын қарастырдық. Турбо Пролог логикалық ... ... және ... ... ... ... ... программалау тілінің интерактивті
электрондық оқулығы алынды. Электрондық оқулықта тестілеу, ... Осы ... ... білім алушылар білімін жетілдіре
алады деген ... ... ... И. ... на ... ... для искусственного интеллекта.
М.: Мир, 1990.-210 с.,ил.
Ин Ц., Соломон Д. Использование Турбо-Пролога. М.: Мир, 1993.-260 с.,ил.
Клоксин У., ... К. ... на ... Рrolog. М.: Мир, ... ... ... интеллект, сараптаушы жүйелер, Пролог. Оқу құралы.
Шымкент 2003
Ковальски Р. Логика в решении проблем. М.: Наука, 1990.-182 с.,ил.
Логическое программирование /Под ред. В.Н. ... М.: Мир, ... Ж. Л. ... ... ... М.: Мир, ... ... Д. Программирование экспертных систем на Турбо-Прологе. М.:
Финансыи статистика, ... ... Л., ... Э. ... программирования на языке Пролог.М.: Мир,
1990.-201 с.,ил.
Тей А., ... П., Луи Ж. и др. ... ... к ... от ... логики к логическому программированию. М.: Мир,
1990.-240 с.,ил.
Хоггер К. Введение в логическое программирование. М.: Мир 1988.-280 с.,ил.
Братко И. Программирование на языке ... для ... ... Мир, ... Ц., ... Д. ... ... М.: Мир, 1993
Клоксин У., Меллиш К. Программирование на языке Рrolog. М.: Мир, ... Р. ... в ... ... М.: Наука, 1990
Логическое программирование /Под ред. В.Н. Агафонова М.: Мир,1988
Лорьер Ж. Л. Системы искусственного интеллекта. М.: Мир, 1991
Марселлус Д. ... ... ... на ... М.:
Финансы и статистика, 1994
Стерлинг Л., Шапиро Э. Искусство программирования на ... ... ... ... ... ... ... терезесі
Бұл терезеде лабораториялық жұмыстар тізімі көрсетілген.
Тест парағының алғашқы терезесі.Тесттің үш ... да ... ...

Пән: Информатика
Жұмыс түрі: Дипломдық жұмыс
Көлемі: 88 бет
Бұл жұмыстың бағасы: 2 000 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
Білім беру саласының дамуы105 бет
1. қ.р. және тағам өнімдерінің ғылыми мекемелері 2. тағам өнімдерін модельдеудің математикалық әдістерін қолдану5 бет
C++ Builder бағдарламалау тілінде логикалық желіде виртуалдық қарым қатынас жасау10 бет
Delphi-де математикалық есептеуге арналған бағдарлама құру19 бет
Excel кестелік процессоры. математикалық функцияларды қолдану.7 бет
Html тілінде математикалық логика пәнінен электрондық оқулық құру40 бет
Mathcad математикалық пакеті4 бет
Mathcad-та қолданбалы математикалық есептерді шығару жолдары8 бет
Turbo pascal6 бет
Turbo Pascal - дағы енгізу және шығару операторлары26 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь