fizzbuzz( 0 , L, L) :-!.
fizzbuzz( X, T, L) :- 0 is X mod 15 , !, Z is X- 1 , fizzbuzz( Z, [ 'fizzbuzz' | T] , L) .
fizzbuzz( X, T, L) :- 0 is X mod 5 , !, Z is X- 1 , fizzbuzz( Z, [ 'buzz' | T] , L) .
fizzbuzz( X, T, L) :- 0 is X mod 3 , !, Z is X- 1 , fizzbuzz( Z, [ 'fizz' | T] , L) .
fizzbuzz( X, T, L) :- Z is X- 1 , !, fizzbuzz( Z, [ X| T] , L) .
Zml6emJ1enooMCxMLEwpOi0hLgpmaXp6YnV6eihYLFQsTCk6LTAgaXMgWCBtb2QgMTUsICEsIFogaXMgWC0xLCBmaXp6YnV6eihaLFsnZml6emJ1enonfFRdLEwpLgpmaXp6YnV6eihYLFQsTCk6LTAgaXMgWCBtb2QgNSwgISwgWiBpcyBYLTEsIGZpenpidXp6KFosWydidXp6J3xUXSxMKS4KZml6emJ1enooWCxULEwpOi0wIGlzIFggbW9kIDMsICEsIFogaXMgWC0xLCBmaXp6YnV6eihaLFsnZml6eid8VF0sTCkuCmZpenpidXp6KFgsVCxMKTotWiBpcyBYLTEsICEsIGZpenpidXp6KFosW1h8VF0sTCku
stdout
GNU Prolog 1.3.0
By Daniel Diaz
Copyright (C) 1999-2007 Daniel Diaz
L = [1,2,fizz,4,buzz,fizz,7,8,fizz,buzz,11,fizz,13,14,fizzbuzz,16,17,fizz,19,buzz]
yes