You don't need to use mod for fizzbuzz. It's likely the most effective (besides precomputed tables), but there are several alternatives. To name some:
1. Create your own mod function (you can most likely leave out dealing with negatives and overflows as long as you just point that out). Given dividend X and divisor Y, while X>=Y: X=X-Y and finally return X.
2. Take human approach and convert the number to string. Skip 0/print it depending on definition. If last number is 0 or 5, it's dividable by 5. For dividable by 3, you loop thru the string and sum the numbers. Repeat until the length of string is 1. Now compare it to 3, 6 and 9 (you can convert it back to number or just compare the string of those). If it's true, it's dividable by 3.
Surely you could create at least one of those in some language you know?