我有一个 prolog 程序,它接受用户输入并使用该输入来搜索数据库以查找可能的匹配项。
findall(Disease,symptom(Disease,Symptom),Possibles)
此代码从一个用户输入中正确添加了所有可能的疾病,但不会在下一个循环中添加到同一列表中。例如,用户输入“发烧”,程序创建所有可能疾病的列表。但是当用户在下一个循环“头痛”上输入下一个输入时,列表中唯一的仍然是第一个输入的疾病。Prolog中是否可以在每个循环中将一个元素添加到同一个列表中?