33 lines
512 B
Text
33 lines
512 B
Text
import planner.
|
|
fizzbuzz_planner =>
|
|
println(fizzbuzz_planner),
|
|
plan(100,Plan),
|
|
println(Plan.reverse()),
|
|
nl.
|
|
|
|
final(Goal) => Goal == 0.
|
|
|
|
action(H,To,Move,Cost) ?=>
|
|
H mod 15 == 0,
|
|
Move = "FizzBuzz",
|
|
To = H-1,
|
|
Cost = 1.
|
|
|
|
action(H,To,Move,Cost) ?=>
|
|
H mod 5 == 0,
|
|
Move = "Buzz",
|
|
To = H-1,
|
|
Cost = 1.
|
|
|
|
action(H,To,Move,Cost) ?=>
|
|
H mod 3 == 0,
|
|
Move = "Fizz",
|
|
To = H-1,
|
|
Cost = 1.
|
|
|
|
action(H,To,Move,Cost) =>
|
|
H mod 3 > 0,
|
|
H mod 5 > 0,
|
|
Move = H.to_string(),
|
|
To = H-1,
|
|
Cost = 1.
|