我为我的大学编写了一个练习代码并且遇到了问题。我是 Oz 的初学者,只是无法弄清楚为什么这段代码没有显示任何内容,但被编译器接受:
declare Tree W P T1 T2 T3 T4
fun {Count0 Tree}
case Tree.subT of nil then
if Tree.value==0 then
1
else
0
end
[] H|T then
if Tree.value==0 then 1+{Count0 T}
else
0+{Count0 T}
end
end
end
in
T1 = tree(value:0 subT:nil)
T2 = tree(value:0 subT:[T4])
T3 = tree(value:0 subT:nil)
T4 = tree(value:0 subT:nil)
T0 = tree(value:W subT:[T1 T2 T3])
{Browse {Count0 Tree}}
代码应该计算一棵树的值“0”的数量,以及他在 tree.subT 和这些树中的列表中的所有子树等等。
我将非常感谢任何帮助!