- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发 Guess Who?游戏使用 Prolog。游戏的机制非常简单。一个玩家(在这种情况下,人类)从许多可能的人中选择一个人,另一个玩家(计算机)开始询问关于这个人的某些属性的是/否问题。最终,根据给定的答案,将只有一个可能的人。
到目前为止,我已经能够制定一套规则和谓词,以便计算机可以根据迄今为止提出的问题来猜测这个人。我有一组嫌疑人——根据现有线索,这些人可能适合。
suspect('Person 1') :- eyes(blue) , age(old) , gender(male).
gender(X) :- not(asked_gender) ; value_of(gender, X).
最佳答案
这适用于 SWI-Prolog :
:- dynamic value/1.
suspect('Person 1') :- eyes(blue) , age(old) , gender(male).
suspect('Person 2') :- eyes(green) , age(young) , gender(male).
suspect('Person 3') :- eyes(brown) , age(young) , gender(male).
fetch(Criterion, Value) :-
retractall(value(_)),
assert(value([])),
forall(clause(suspect(_), Body),
check(Body, Criterion)),
retract(value(Value)).
check((F, T), Criterion) :-
F =..[Criterion, V1],
retract(value(V2)),
( member(V1, V2) -> V3 = V2; V3 = [V1 | V2]),
assert(value(V3)).
check(T, Criterion).
check((_F, T), Criterion) :-
check(T, Criterion).
check((F), Criterion) :-
F =..[Criterion, V1],
retract(value(V2)),
( member(V1, V2) -> V3 = V2; V3 = [V1 | V2]),
assert(value(V3)).
check((_F), _Criterion).
关于prolog - 猜猜 Prolog 中的类似游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10565302/
我正在设置我的 Authlogic 用户 session 功能。我有点困惑。当我运行时: cucumber features 我收到一些红色错误 Scenario: User signs i
我正在开发 Guess Who?游戏使用 Prolog。游戏的机制非常简单。一个玩家(在这种情况下,人类)从许多可能的人中选择一个人,另一个玩家(计算机)开始询问关于这个人的某些属性的是/否问题。最终
package edu.blastermind.model; import java.util.Random; /** * A NumberGuessingGame represents the r
自从更新到 Android Studio 3.2.0 我面临以下问题: Execution failed for task ':mobile:dataBindingGenBaseClassesDebu
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
我是一名优秀的程序员,十分优秀!