我需要在 Oz 中做这两个非常相似的练习:
*。编写函数 {Some LP},它接受一个列表 L 和一个布尔函数 P。如果 P 对 L 的至少一个元素返回 true,则返回 true,否则返回 false。
*。编写函数 {All LP},当且仅当 P 对于 L 中的所有元素都为真时,它才返回真。
我不确定如果我有这样的函数,我怎样才能让它返回真或假:
declare
fun{P X} //bolean function
if X==2 then true
else false
end
end
fun{Some L P} //Some function
case L
of nil then nil
[] X|Xr then
if {P X} == true then X|{Some Xr P}
else {Some Xr P}
end
end
end
{Browse {Some [1 2 3] P}}
2 为真,所以它必须返回真