If you want to beguarranteedto have at least one of each prize it requires an infinite number of boxes. Here's why: suppose that after collecting 4 boxes you happen to have gotten 4 different prizes - let's call them A, B, C and D - and so the only one missing is prize E. On the fifth box there's a 1 in 5 chance that it contains a prize E, so 4 out of 5 times you'll have to buy another box. But when you buy the 6th box there's only a 4/5 change it has prize E, so you are likely to have to continue on. As you buy more boxes the probability of not ever getting prize E gets smaller, but it never goes to zero.

For a simulation you can use a random number genarator that determines whether prize 1, 2, 3, 4, or 5 comes in each box, and run a Monte Carlo simulation to see the number required to get at keast one of each prize. You will probably find that it typically takes about 10, with as few as 5 and occasionally needing as many as 20 or more.