You can use the [round] object between your [float] and [if] objects (for example [round 0.1]) in order to round off the continuously changing float.
A signal is a continuous arrangement of data, so it will never be 0 for too long, and it will probably be 0 many times in one second.
It would be more helpful if you told us why you want to do this - what are you trying to do exactly? Are you trying to have a bang whenever a signal's volume is zero? Or when there is no input signal? If you just want to count cycles, why are you messing with signals and not just the plain [cycle] object?
After I posted this, I thoung about rounding too. :p
I just wanted to use cycle~ because it automatically oscillates.
I am experimenting with groove~. And thought of using cycle~ to control the sample amount in the "Loop max" part of this to give that granular synthesis kind of sound. And thought of moving the "Loop min" of this every time cycle~ reaches 0 as with the way I showed in the patch I pasted in here (Multiplying by some value and then adding that in order that the lowest value is always 0.).