Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ФЛП ДАЙЫН.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
104 Кб
Скачать

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 тілде шартты өрнекті жазылу түрі: