Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






DOMAINS. name [Иванов,Сидоров,Петров].






List1 = integer*

List2 = symbol*

PREDICATES

name [List1]

score [List2]

CLАUSES

name [" Иванов", " Сидоров", " Петров" ].

score [1, 2, 3, 4].

GOAL

Name [X],

Name [ _, Y, _ ],

Score [Z, _, F, _ ], write(X, ” ”, Y, ” ”, Z, ” ”, F)

Мысал 2. Тізім қ ұ рамын баспағ а шығ ару бағ дарламасы:

DOMAINS

List2=symbol*

List1=integer*

PREDICATES

Print _ list (List1)

Print _ list (List2)

CLAUSES

Print _ list ([ ]).

Print _ list ([Head | Tail]): -write (Head), nl,

Print _ list (Tail).

GOAL

Print _ list ([1, 2, 3, 4])

Мысал 3. X, Y тізім кө бейтінділерінің суммасын табу бағ дарламасы.

DOMAINS

Vector=integer*

PREDICATES

Prod(Vector, Vector, Vector)

CLAUSES

prod([ ], [ ], 0).

prod([X|Xs], [Y|Ys], S): -prod(Xs, Ys, Sp), S=X*Y+Sp.

GOAL

prod([1, 2, 3], [7, 8, 9], Res), write(“Res=”, Res)

Мысал 4. Тізімнің берілген элементінің индексін табу.

 

DOMAINS

L=integer*

X=integer

PREDICATES

Poluch(L, X, X)

CLAUSES

poluch([X|Y], 1, X).

poluch([W|Y], N, X): -M=N-1, poluch(Y, M, X).

GOAL

poluch([1, 2, 3, 4], 3, X), write(X)

Мысал 5. Тізімнің максималды элементін табу.

 

DOMAINS

L=integer*

X=integer

PREDICATES

Max(L, X)

CLAUSES

max([X], X).

max([X|Y], X): -max(Y, W), X> W,!.

max([X|Y], W): -max(Y, W).

GOAL

clearwindow, max([1, 2, 10, -4], X), write(X)

Мысал 6. Конкатенация қ атынасын қ олданып, тізімнің екінші элементін баспағ а шығ ару.

DOMAINS

Z=integer

X, Y=integer*

PREDICATES

Konk(X, X, X)

Vtor(Z, X)

CLAUSES

konk([], L, L).

konk([X|L1], L2, [X|L3]): -konk(L1, L2, L3).

vtor(X, L): -konk(_, [_, X|_], L).

GOAL

clearwindow, L=[1, 2, 3, 4], vtor(X, L), write(X)

Мысал 7. Пә ндер бойынша “4” жә не “5” - тері бар студенттердің фамилияларын экранғ а шығ ару

DOMAINS

Col=integer*

Nam=symbol*

PREDICATES

Find(Col, Nam, Nam)

CLAUSES

find([ ], [ ], []): -!.

find([H1|T1], [H2|T2][H3|T3]): -H1> =4, H1< =5, write(H2, " ", H2, ” ”, H3), nl,

Find(T1, T2, T3);

Find(T1, T2, T3).

GOAL

clearwindow, makewindow(1, 1, 4, " find", 1, 1, 10, 20),

find([3, 2, 4, 5], [ivanov, petrov, kozlov, sidorov], [mat, xim, inf, fiz]).

Мысал 8. Мә зірдің пункттерін жү зеге асыратын, бағ дарлама қ ұ ру: фамилия бойынша іздеу, жазу нө мірі бойынша, сұ рақ тарды қ арастыру.

DOMAINS

Iniz=inizial(FIO, POL, GOD)

In=ini(FIO, POL, GO)

i=integer

FIO, POL, Text, Go=symbol

GOD, NUM=integer

g=gr(NUM, Iniz)

c=gh(Text, In)

PREDICATES

Bezr(g)

Vopros(c)

Vopros1(c)

Start

Process(i)

Patch

GOAL

Start.

CLAUSES

/* Мә зір қ ұ ру процедурасы */

start: -makewindow(1, 2, 7, " Жұ мыссыздар тізімі", 0, 0, 25, 80),

Clearwindow,

Patch.

/* Мә зір басқ ару процедурасы */

patch: -cursor(7, 0),

write(" 1-Фамилиясы бойынша іздеу"), nl,

write(" 2-Нө мір бойынша іздеу"), nl,

write(" 3-Сұ рақ тарды қ арастыру"), nl,

write(" 4-Шығ у"), nl,

write(" => "),

Readint(Choise),

Choise> =0,

Choise< 4,

Clearwindow,

Process(Choise),

Retractall(_);

Clearwindow,

Choise=4,

Retractall(_),


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.01 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал