Пазл Bat & Ball - PullRequest
       20

Пазл Bat & Ball

0 голосов
/ 24 июня 2018

Я пытаюсь решить эту загадку в прологе:

Бита и мяч стоят $ 1,10.Летучая мышь стоит на один доллар больше, чем мяч.Сколько стоит мяч?

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

Я придумала это потенциальное решение, однако получаю ложное без ответа.

Вот мой запрос:

solve(Bat, Ball, 1.10).

Я также хотел бы понять, что не так с моими рассуждениями здесь.

1 Ответ

0 голосов
/ 29 июня 2018

Простой способ, сгенерируйте и протестируйте:

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), чтобы прогрессировать в изучении Пролога.

note : @lurker делает отличную работу с действительно , объясняя вашу ошибку.Так что кредиты ему ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...