数字を印刷する操作を行うファンクター変換([3,5,1,3]、[three、five、one、three])を試していました。このように実行していると、奇妙な警告が表示されます。
35?-translate([1,2,3]、[a、b、c])。エラー:書き込み/ 2:ストリーム`a'は存在しません
domains
list1=integer*
list2=symbol*
述語
translate(list1,list2)
means(integer,symbol)
条項
translate([],[]).
translate([],_):-
write("\nError in Input").
translate(_,[]):-
write("\nError in Input").
translate([Head1|Tail1],[Head2|Tail2]):-
write(Head2," = "),
means(Head1,Name),
write(Name,"\n"),
translate(Tail1,Tail2).
means(0,zero).
means(1,one).
means(2,two).
means(3,three).
means(4,four).
means(5,five).
means(6,six).
means(7,seven).
means(8,eight).
means(9,nine).
正確には何が問題ですか?これは期待値です。
translate([1,2,3]、[a、b、c])
a=1つb=2つc=3つ
はい