我开始玩prolog并有这个问题: 我怎么能在prolog中写这个
convert(this is the first program.,S) --> S = [this,is,the,first,program].
我试过这样的事情:
convert(Wordlist):-
get0(Char),
getrest(Char,Wordlist).
getrest(46,[]):-!. %end of sentence
getrest(32,Wordlist):-!, %end of word scip and continue
convert(Wordlist).
getrest(Letter,[Word|Wordlist]):-
getletters(Letter,Letters,Nextchar), %read letters of current word
name(Word,Letters),
getrest(Nextchar,Wordlist).
getletters(46,[],46):-!.
getletters(32,[],32):-!.
getletters(Let,[Let|Letters],Nextchar):-
get0(Char),
getletters(Char,Letters,Nextchar).
并且它有效但我没有得到我想在convert(the first program.,S).
这样的子句中转换的句子在上面的解决方案中我必须从prolog控制台读取字符串。