№1 Зертханалыќ ж±мыс



жүктеу 208 Kb.
бет2/17
Дата20.01.2022
өлшемі208 Kb.
#33755
түріПрограмма
1   2   3   4   5   6   7   8   9   ...   17
ЖИ зертханалык жумыс

Есепті шешу мысалдары

Тапсырма және жұмыстың орындалу реті. Фактылардан тұратын программаны орындауға жіберіп, жоғарыдан төмен, солдан оңға қарай бағытта салыстыру принципіне назар аударыңыз. Мақсат сыртқы.

Likes предикаты 2 объектінің арасындағы қатынасты суреттейді яғни предикат 2 символдық аргументке ие. Осыған сәйкес предикаттарды суреттеу бөлімінде былай жазамыз: likes (symbol, symbol). Домендерді көрсету бөлімінде мәндер жиынын былай көрсету қажет: person, thing = symbol.

Бұл келтірілген мысалдарды программада былайша көрсетушге болады:



1 түрі:

domains


person, thing = symbol

predicates

likes (person, thing)

clauses


likes (tom, books).

likes (tom, car ).

likes (tom, tennis).

likes (mary, books).

likes (mary, picture).

likes (mary, tom).



2 түрі:

predicates

likes (symbol, symbol)

clauses


likes (tom, books).

likes (tom, car ).

likes (tom, tennis).

likes (tom, computer)

likes (mary, books).

likes (mary, picture).

likes (mary, tom).

likes (mary, dance)


Программа мәтінін енгізіп болғаннан кейін Run меню пункті арқылы орындауға жіберу қажет. Программада қате болмаған жағдайда диалогты терезеде Goal шақыруы пайда болады. Программада сыртқы мақсат қолданылады, назар салыңыз.

Мынадай сұранымдар (мақсаттар) беріп, Enter пернесін басу керек:



  1. likes (tom, X) /*Томға не ұнайды*/

  2. likes (mary, X)

  3. likes (X, Y) /*кімге не ұнайды*/

  4. likes (X, car)

  5. likes (X, books)

  6. likes (mary, tom)

  7. likes (tom, mary)

Шешімдерін көрсетіңіз. Қанша шешімі бар? Жүйе қандай жағдайда шешімін бермейді, қай уақытта ол Yes немесе No жауабын береді? Өздеріңіз ойдан сұрақтар беріңіздер. Оқытушыға шешімдеріңізді көрсетуді ұмытпаңыз.

Өзіңізді қызықтыратын ойын түрлерін көрсетіп программаға өзгеріс енгізуіңізге немесе қайтадан программа жазуыңызға болады. Программадағы clauses тарауында фактылардың соңына ереже қосып, predicates бөлімінде жаңа предикаттарды суреттеуді ұмытпаңыз.

Predicates тарауына қосыңыз:

clever(symbol)

strong(symbol)

run


hobby(symbol,symbol)

clauses тарауына қосыңыз:

likes (kat, X) :-

likes (mary, X).


clever(X) :-

likes(X, books), likes(X, picture).

strong(X) :-

likes(X, tennis).


run :-

write(“Сіздің атыңыз? “), nl,

readln(N), nl,

write(N, “ , Томға ұнаған нәрсе сізге де ұнайды“), nl,

readln(X), hobby(X, N).

hobby(X, N) :-

X=”да “,

write(N, “ ,сізге қозғалыс ұнайды “), nl,

readln(А), nl,

А=”да”,


write(N, “ , сізге теннис ұнайды “).

hobby(“да“, N) :-

nl, write(N, “ , сізге авто ұнайды “).
hobby(”нет“, N) :-

write(N, “ ,сізге тыныштық ұнайды “), nl,

readln(В),

В=“да“,


write(N, “ , сізге кітаптар ұнайды “);

nl, write(N, “ , сізге дискотека ұнайды“).


Программаның орындалу процесін түсіндіріңіз, ережені енгізгеннен кейін қандай фактылар пайда болады?

Программа денесіне goal тарауын енгізіңіз, яғни мақсатты ішкі мақсатқа айналдыру керек деген сөз. Енді мақсат ішкі мақсаттардан тұрады. Мақсат ішкі мақсаттардың екеуі де сәтті болғанда ғана жеткілікті аяқталады.

goal

likes (tom,X),



write (“X=”, X).

Ішкі мақсатты пайдаланып жазған программаның орындалуын сыртқы мақсатты программаның орындалуымен салыстырыңыз.

Мақсатты өзгертіңіз

goal


likes (X, Y),

write (“X=”, X, “Y=”, Y).

Әртүрлі типті объектілерді қолдану. Тапсырмалар вариантының бірін таңдап программа жазыңыз және таңдалған тақырыпқа сәйкес статикалық дерекқор құру қажет.

Мысалы, мынадай предикатты пайдаланып программа жазыңыз:

oқиды (студент фамилиясы, пән, баға, мерзімі)

study(name, subject, numb,data)

Бұл предикат символдық және бүтін сандық типті аргументтерді қамтиды.


жүктеу 208 Kb.

Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   17




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

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