Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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
List 序言:嵌套列表_List_Prolog - Fatal编程技术网

List 序言:嵌套列表

List 序言:嵌套列表,list,prolog,List,Prolog,我有这个序言代码: pick_number_simple([],[]). pick_number_simple([H|T],[H|T2]):- number(H), pick_number_simple(T,T2). pick_number_simple([H|T],T2):- not(number(H)), pick_number_simple(T,T2). 这会把数字列出来。例如: pick_number_simple([d,f,7,5,e,3,g], NumList)

我有这个序言代码:

pick_number_simple([],[]).
pick_number_simple([H|T],[H|T2]):- 
    number(H), pick_number_simple(T,T2).
pick_number_simple([H|T],T2):-
    not(number(H)), pick_number_simple(T,T2).
这会把数字列出来。例如:

pick_number_simple([d,f,7,5,e,3,g], NumList)
pick_numbers_general([a,b,1,[2,[c,3]],d],1,NumList)
给你:

[7,5,3]
但我想让它从嵌套列表中获取数字

例如:

pick_number_simple([d,f,7,5,e,3,g], NumList)
pick_numbers_general([a,b,1,[2,[c,3]],d],1,NumList)
将给你:

[2,3]
我该怎么做呢?

你可以使用

所以


等待“让它从嵌套列表中获取数字”是什么意思?第二个参数pick_numbers_general/3应该怎么做?比如从嵌套列表中获取数字,例如,如果我有这个pick_numbers_generals([a,b,1,[2,[c,3]],d],1,NumList)。我只想从嵌套列表中获取Numlist=[2,3]?本例中“1”的含义是什么?它不必只是嵌套列表,1是一个数字,如果输出大于它,则谓词为真。我已更新了答案。这是你需要的吗?