有Prolog专家帮我写优化代码吗?

有Prolog专家帮我写优化代码吗?,prolog,eclipse-clp,Prolog,Eclipse Clp,有Prolog专家帮我写优化代码吗? 我写了这个,但我认为它包含错误 例如,如果我在一家餐厅,我想以15.0美元的价格购买一道开胃菜和主菜,假设我们在开胃菜中有:菜1要5美元,菜2要6美元,而在主菜中:菜1要12美元,菜2要9美元。应该实现代码,从开胃菜中选择一道菜,从主菜中选择一道菜,它们的价格等于我想要的预算,即15美元 这是一个示例代码。有帮手吗 solve(Amounts) :- Total = 1505, Prices = [215, 275, 335,

有Prolog专家帮我写优化代码吗? 我写了这个,但我认为它包含错误 例如,如果我在一家餐厅,我想以15.0美元的价格购买一道开胃菜和主菜,假设我们在开胃菜中有:菜1要5美元,菜2要6美元,而在主菜中:菜1要12美元,菜2要9美元。应该实现代码,从开胃菜中选择一道菜,从主菜中选择一道菜,它们的价格等于我想要的预算,即15美元

这是一个示例代码。有帮手吗

solve(Amounts) :-
        Total = 1505,
        Prices = [215, 275, 335, 355, 420, 580],

        length(Prices, N),
        length(Amounts, N),
        Amounts :: 0..Total//min(Prices),
        Amounts * Prices #= Total,

        labeling(Amounts).

这不是和你的问题完全一样吗?如果你需要澄清你的问题,只需编辑这个问题,而不是创建一个新的、多余的问题。这是你写的吗?这太神奇了,这和我几年前在。。。