Главная /
Основы программирования на языке Visual Prolog /
Определение предикатов pet и unif имеет вид:pet(h(C, N, Pt, D, S), P) = h(C, N, P, D, S):- unif(Pt, P). unif(X, Y):- X = empty, !; Y = X. Вызов <…>, House = pet(h(empty, empty, Pt, empty, empty), P) успешен
Определение предикатов pet
и unif
имеет вид:pet(h(C, N, Pt, D, S), P) = h(C, N, P, D, S):- unif(Pt, P).
unif(X, Y):- X = empty, !; Y = X.
Вызов <…>, House = pet(h(empty, empty, Pt, empty, empty), P)
успешен
вопрос
Правильный ответ:
только если
P = Pt
если
Pt = empty или P = Pt
только если
Pt = empty
всегда
Сложность вопроса
84
Сложность курса: Основы программирования на языке Visual Prolog
94
Оценить вопрос
Комментарии:
Аноним
Экзамен прошёл на зачёт.!!!
24 июн 2020
Аноним
Это очень легкий вопрос по интуиту.
09 окт 2019
Другие ответы на вопросы из темы программирование интуит.
- # Результат применения подстановки {X = bob} к формуле f(X, ann, X) равен
- # Декларативное значение логической программы animal(X) :- bird(X). animal(zebra). bird(swan). Имеет вид:
- # Определение предиката scan имеет вид:scan(S) = [Tok | scan(Rest)]:- string::frontToken(S, Tok, Rest), !. scan(_) = []. Какое значение примет переменная S в результате вызова S = scan(" The cat likes it. ")?
- # Определение предиката print имеет вид:print() :- repeat(), write('a'), !. print(). Сколько раз будет напечатан символ 'a' при вызове цели print()?
- # Определение предиката reverse имеет вид:reverse([], L, L). reverse([A | L1], L2, L) :- reverse(L1, [A | L2], L). В результате вызова reverse([1, 2, 2], [], L) переменная L примет значение