我必须写一段序言,我必须计算数组中的哪个位置用于存储值。然而,这些计算的结果应该返回一个整数,所以我使用floor/1谓词来获取值的整数,但这在我的代码中不起作用。它不断返回一个带小数点的数字,例如 3.0 而不是 3
以下是我的代码:
assign_value(El, NumberArray, RowNumber, I) :-
ground(El),
Number is NumberArray[El],
Col is I/3,
Row is RowNumber/3*3,
Sum is floor(Col + Row + 1),
subscript(Number, [Sum], El).
assign_value(_, _, _, _).
的结果Sum is floor(Col + Row + 1)
永远不是整数,我不知道为什么。谁能帮我这个?