Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Recursion 序言:在列表中的列表上使用成员_Recursion_Prolog_Append_Member - Fatal编程技术网

Recursion 序言:在列表中的列表上使用成员

Recursion 序言:在列表中的列表上使用成员,recursion,prolog,append,member,Recursion,Prolog,Append,Member,对于赋值,我们必须检查一个子句的成员是否是列表中列表的成员。例如: person(p1,[a,c]) 以及任务任务(t1,a) 我知道您可以使用member来查看类似member(a,[a,c])的内容。但是,我如何在另一个子句中检查(我认为是尾部) 在弄明白了这一点之后,我想知道我是否可以为一个条件函数使用一个嵌套函子?我的程序开始像这样: schedule(Person,Task,RESULT):- member(<person's list>,<task

对于赋值,我们必须检查一个子句的成员是否是列表中列表的成员。例如:

person(p1,[a,c])
以及任务
任务(t1,a)

我知道您可以使用member来查看类似member(a,[a,c])的内容。但是,我如何在另一个子句中检查(我认为是尾部)

在弄明白了这一点之后,我想知道我是否可以为一个条件函数使用一个嵌套函子?我的程序开始像这样:

schedule(Person,Task,RESULT):-
        member(<person's list>,<task's list>) -> append(<person's head>,<member's head>,RESULT).
计划(人员、任务、结果):-
member()->append(,RESULT)。
schedule
是我正在生成的函子,它将在任务子句列表中递归,并检查是否有合适的人执行任务(通过匹配子句的该部分)。最后,我将输出任务列表(
t1
-
t6
)以及能够完成任务的人员

对不起,我的术语不适用


谢谢大家!

@潜伏者:
memberx(X,Xss):-member(X,Xss),member(X,Xs)。
@false,啊,是的。谢谢那更整洁。谢谢。@潜伏者:这也意味着你根本不需要谓词定义+名称,因为你可以写这两个目标directly@false的确这很简单。谢谢