如何创建游戏猜词

时间:2019-05-29 21:29:02

标签: prolog

我正在学习序言,但遇到创建游戏猜词的问题。 我已经编写了一些代码来读取文件中的列表单词并返回一个随机单词,但是我不知道如何从播放器输入和原始单词中检查猜单词。

开始游戏时,显示第一个字母并将其他未知字母隐藏到.中。每个猜测时间,正确放置的字母将显示!,正确放置的字母?将被播放的次数是原始单词中的单词数量。

我的第一个阅读列表并选择原始单词的代码

main:-  open('dictomaire.txt',read,Str), 
        lire_mots(Str,Mots), 
        close(Str),
        choix(Ele,Mots),
        write(Ele).
lire_mots(Stream,[]):-at_end_of_stream(Stream).
lire_mots(Stream,[Mot|L]):- \+ at_end_of_stream(Stream),
                            read(Stream,Mot),
                            lire_mots(Stream,L).
choix(Ele,Dictionnaire):- randomize, 
                        longueur(Dictionnaire,Long),
                        random(1,Long,N),
                        element_at(Ele,Dictionnaire,N).

longueur([],0).
longueur([_|Q],N1):- longueur(Q,N2), N1 is N2+1.
element_at(X,[],0).
element_at(X,[X|_],1).
element_at(X,[_|Q],N1):- element_at(X,Q,N2), N1 is N2+1.

我想像例子一样显示结果

result: L......
input:  LOUANGE
result: !!?..?!
        LO....E
input:  LOGEUSE
result: !!!.?.!
        LOG...E
input : LOGIQUE
result: !!!!!!!
        LOGIQUE

我该怎么办?

0 个答案:

没有答案