Of the responses so far, this one is closest to being correct. Rather than "asymptotically approaching zero," however, the height of the bounce will quickly converge precisely to zero. Assume that the previous bounce (up and back down) took time t. Then the ball will stop bouncing after time t/(1-sqrt(0.6)) ~ 4.4t. After that, the ball will simply continue moving ("rolling") to the right. This follows from summing the geometric series 1 + sqrt(0.6) + sqrt(0.6)^2 + sqrt(0.6)^3 + . . . , where 0.6 = (1 - 0.4) is the ratio of the height of the next bounce to the current bounce, and we take the square root since height and time are related by h = 1/2 at^2.
Incidentally, for anyone who has a ping pong ball handy, this is very close to what happens in real life.
Edit: To clarify, it's the parent's "old, wrong answer" that's closer to being correct. btilly (below) also has it right.
No, you are making the same mistake as some of the other people. You are summing a geometric series so you are saying the ball bounces infinitely often and the time it takes for the ball to bounce infinitely often is blah. But if it bounces infinitely often then it never stops to roll on the floor because if it did stop and roll on the floor in a finite amount of time then you wouldn't have an infinite series to sum which would mean that the potential energy in the horizontal direction would be zero in a finitely many bounces which contradicts the problem statement and part of your original reasoning.
Ya, and what are the terms in the series representing? Is it air time of each bounce? Your calculation makes it clear that it is. So you are saying you are calculating the air time for infinitely many bounces, the key word here is infinite, i.e. the ball bounces up and down, up and down infinitely often. So if the ball bounces infinitely often how can it stop and roll on the floor because infinitely many bounces means not stopping after finitely many bounces and rolling on the floor. Your calculation for the time is confounding two things, air time and bouncing. You can calculate the air time assuming infinitely many bounces but then you can't go and claim that the ball stops bouncing after t = whatever because you calculated t = whatever assuming the ball never stopped bouncing and then after the calculation went back and changed your assumption, that is a logical fallacy if I ever saw one.
1) The ball stops bouncing in a finite amount of time.
2) The ball bounces an infinite number of times.
3) This is not a contradiction, no more than the idea that a projectile passes through an infinite number of spatial points in finite time. Please go and read about geometric series and Zeno's paradox on wikipedia, as another commenter has already suggested.
Incidentally, for anyone who has a ping pong ball handy, this is very close to what happens in real life.
Edit: To clarify, it's the parent's "old, wrong answer" that's closer to being correct. btilly (below) also has it right.