Vnuk(X,y):-rod(y,z),rod(z,X), jen (X).
Немере қыз қатынасы еместігін анықта:
Vnuk(X,y):-rod(y,z),rod(z,X), muj (X).
Немере аға қатынасын анықта:
brat(X,Y):-rod(F,Z),rod(F,G),rod(Z,X),rod(G,Y),muj(X),Z<>G,X<>Y
Немере аға қатынасы еместігін анықта:
muj(X,Y):-rod(F,Z),rod(F,G),rod(Z,X),rod(G,Y),muj(X),Z<>G,X<>Y.
Немере әпке қатынасы еместігін анықта:
sister (X,Y):-rod(F,Z),rod(F,G),rod(Z,X),rod(G,Y),jen(X),Z=G,X=Y.
Немере әпке қатынасын анықта:
sister (X,Y):-rod(F,Z),rod(F,G),rod(Z,X),rod(G,Y),jen(X),Z<>G,X<>Y.
ППППППППП
Прологтағы атом құрылымы:
DOMAINS ------ PREDICATES --------- CLAUSES -------- GOAL -------
Пролог функторлары:
дата (1, мамыр, 1983)
Прологта бағдарламалау келесі кезеңдерден тұрады:
фактілерді хабарлау,ережелерді анықтау,сұрақты ұйқастыру
Прологта берілгендер типі болып табылады
айнымалылар, атомдар
Прологта айнымалылар мысалы:
Х
Прологтағы айнымалы
ақпарат қоймасы емес
Пролог тілінде «:-» білдіреді
егер
Пролог тілінде « , » білдіреді
және
Пролог тілінде комментарий белгіленеді
/ * комментарий * / немесе % комментарий
Прологта айнымалыларды сипаттау мысалы
a = symbol
Прологта ереже мысалы
жақсы көреді (Х, Y): - тәттіні (Y)
Прологта тізім сипатамасы
G1=integer *
Прологта бірден бірнеше фактінің бар не жоғын тексеру сұрағы
құрылымды сұрақ
Пролог сөйлемдері үш типті:
фактілер, ережелер, сұрақтар
Пролог тілінде қай амал негізгі болып саналады?
салыстыру
Племянница қатынасы еместігін анықта:
племянница(Y,X):-брат(Х,Z), род(Z,Y), муж(Y).
Папа қатынасын анықта:
папа(Х,Y):-род(X,Y), муж(Х).
ССССССССС
Символдар ұсыну үшін қолданылатын Haskell типтері:
Char
Санның түбірін шығаратын Haskell – дің математикалық функциясы:
sqrt
Haskell. sqrt 16 функцияның нтижесі:
4
Сыртқы мәтіндік редакторды шақыратын Haskell командасы:
:edit
ТТТТТТТТТ
Тізімдердің конкатенация Haskell.операторы:
++
Тізімді басы мен құйрығына бөлу операциясы
[Head | Tail]
ООООООО
Объектілердің берілген аттарының сипаттауын шығаратын Haskell командасы:
:info
Операциялық жүйеге кіретін және берілген команданы орындайтын Haskell командасы:
:!
ӨӨӨӨӨӨӨӨ
Өзіміз алғымыз келетін күйді суреттеу мүмкіндігін беретін, бірақ оған қалай келу нұсқасын талап етпейтін тілдер қалай аталады:
декларативті
ФФФФФФФФ
Функционалды тілдерінің қасиеттеріне жатпайтын қасиетті көрсетіңіз:
рабайсыздық (громоздкость)
Функционалды бағдарламалаудың жетістіктеріне жатпайды:
функциялардың тәуелділігі
Функционалды бағдарламалаудың кемшіліктеріне жатпайды:
ОББ- ға қарағанда коды бірнеше рет кіші
Функцияны орындауға берілген модульді ағымды ретінде орнататын Haskell командасы:
:module
ҰҰҰҰҰҰҰҰҰ
Ұзындығы шектелмеген бүтін сандарды ұсыну үшін қолданылатын Haskell - дің типі:
Integer
«» «» «» «» «»
«++» Haskell оператордың орындалатын әрекеті:
тізімдерді қосу
: : : : : : : : : :
:load командасының Haskell- дегі қызметі:
файлдардан модульдерді жүктейді
:also командасының Haskell- дегі қызметі:
қосымша модульдерді жүктейді
:reloa командасының Haskell-дегі қызметі:
жүктеудің соңғы командасын кайталайды
:project командасының Haskell – дегі қызметі:
жобаның файлын жүктейді және пайдаланады
:edit командасының Haskell- дегі қызметі:
қатені өзгертуге сыртқы мәтіндік редакторын шақырады
:module командасының Haskell – дегі қызметі:
функцияны орындауға берілген модульді ағымды ретінде орнатады
:type командасының Haskell-дегі қызметі:
берілген өрнектің типін шығарады
:? командасының Haskell дегі қызметі:
командалар тізімін шығарады
:set командасының Haskell -дегі қызметі:
басқару жолда АЖ параметрлерін орнатады
:names командасының Haskell – дегі қызметі:
ағымды аттар кеңістігіне берілген барлық аттарының тізімін шығарады
:info командасының Haskell – дегі қызметі:
объектілердің берілген аттарының сипаттауын шығарады
:browse Haskell командасының қызметі:
Берілген модульдерде барлық объектілер тізімін шығарады
:find командасының Haskell -дегі қызметі:
белгілі ат орналасқан модулін өзгертуге шақырады
:! командасының Haskell – дегі қызметі:
Операциялық жүйеге кіреді және берілген команданы орындайды
:cd Haskell командасының қызметі:
ағымды каталогты ауыстырады
:gc Haskell командасының қызметі:
қоқыс жинау процесін мәжбүр етіп іске қосады
:version Haskell командасының қызметі:
бағдарламаның версиясын шығарады
:quit Haskell командасының қызметі:
бағдарламадан шығуды орындайды
((((((())))))))))
((Char, Integer), String, [Double]) Haskell типтердің сипаттауына келетін мән:
(('a',6+2),"tekst",[2.1*3.3])
(>>) Haskell операциясы қай кезде қолданады?
егер функция бірінші монадалық операндпен алынған мәндерін қолданбаса
(>>=) Haskell операцияны анықтайтын тип:
IO
[[[[[[[[]]]]]]]]]]]]
[[[(Integer,Bool)]]] Haskell типтердің сипаттауына келетін мән:
[[[(500,True)]]]
<><><><><><>
<expr> командасының Haskell- дегі қызметі:
берілген өрнекті іске қосады
САН
2*(5-1)^2 Haskell өрнектің нәтижесі:
32
АҒЫЛШЫН
HHHHHHHH
Hugs интерпретатор қосылған кезде экранда пайда болатын стандартты командасы:
Prelude>
Haskell. Өрнектің типін анықтау командасы:
:type
Haskell. Bool типі екі мағынаны қамтиды:
True және False
Haskell - де 3+9*4/3 өрнекті есептеңіз:
15
Haskell - де sqrt 2 + 1 өрнекті есептеңіз:
2,44
Haskell - де 2 + 5*6 өрнекті есептеңіз:
32
Haskell – де 1+4^2 өрнекті есептеңіз:
17
Haskell. ((1,’a’),1.2) жұптың типін анықтаңыз:
((Integer,Char),Double).
Haskell тілде шартты өрнекті жазылу түрі:
