Oz で次の 2 つの非常によく似た演習を行う必要があります。
*。リスト L とブール関数 P を取る関数 {Some LP} を書きます。これは、P が L の少なくとも 1 つの要素に対して true を返す場合に true を返し、それ以外の場合は false を返します。
*。L のすべての要素に対して P が true である場合にのみ true を返す関数 {All LP} を記述します。
私が確信していないのは、私がこのような関数を持っているかどうかです.どうすればtrueまたはfalseを返すことができますか:
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 は真なので、真を返す必要があります