蝙蝠球拼图

时间:2018-06-24 10:04:14

标签: prolog

我正在尝试解决序言中的这个难题:

  

一个球棒的价格是1.10美元。蝙蝠比蝙蝠贵一美元。   球。球要多少钱?

solve(Bat, Ball, Sum) :-
  Bat + Ball is Sum,
  Bat is 1 + Ball.

我想出了这个潜在的解决方案,但是我变得虚假,没有答案。

这是我的查询:

solve(Bat, Ball, 1.10).

我也想理解,这里的推理出了什么问题。

1 个答案:

答案 0 :(得分:1)

一种简单的方法,通过生成和测试:

cents(Cents) :- between(0,1 000 000,Cents).

bat_and_ball(Bat, Ball, Sum) :-
  cents(Ball),
  Bat is 100 + Ball,
  Sum is Bat + Ball.

当然,可以学习CLP(FD),以进行Prolog学习。

注释:@lurker做一个伟大工作来真的解释您的错误。所以要归功于他...