gpt4 book ai didi

prolog - 翻译序言中的一个句子

转载 作者:行者123 更新时间:2023-12-01 15:48:40 24 4
gpt4 key购买 nike

谁能帮我显示未翻译的词?例如我想翻译,'i want to eat',事实上,没有 to 的参数......所以它会显示'saya mahu to makan'......这个词 to 保持原样,需要显示它..这是我的代码示例..

:-dynamic(item/1).

kamus(saya,i).
kamus(suka,love).
kamus(awak,you).

run:-
write('Enter a sentence:'),
read(V),
printed(V,C).

%malay to eng

check(S,W,R):-
kamus(R,S),name(S,W).

%eng to malay

check(S,W,R):-
kamus(S,R),name(S,W).

check(Y,R):-
item(Z),name(Z,Y).

try2(P,R):-
name(P,Q),
split(Q,32,E),
member(Z,E),
assert(item(Z)),
(check(Y,R);check(S,W,R)),Z=W.

printed(V,C):-
try2(V,C),write(C),write(' '),fail.

split(String, Space, [Word|List]) :-
append(Word, [Space|Tail], String),
!,
split(Tail, Space, List).

split(String, _Space, [String]).

输出示例:

?-run.
Enter the sentence : 'saya benci awak'.

i you no.

**事实上没有'benci'但我需要它显示在输出中---> 'i benci you'

最佳答案

尝试添加一个“包罗万象”的规则,在戒除成瘾之后

check(S,W,R):-
kamus(S,R),name(S,W), !.

% after edit. HTH
check(S,_,R):-
name(S,R).

check(Y,R):-
item(Z),name(Z,Y), !.

check(Y,Y).

当规则数据库中列出了更合适的规则时,削减确保默认不参与。

编辑:我没有注意到第一个检查的元数为3(然后第一个 cut 就没用了)。当然,另一个默认值应该放在上面提到的地方。

关于prolog - 翻译序言中的一个句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16869624/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com