Suppose we have an algorithm like: n = 0 REPEAT c = randomInt(0,1) n = n + 1 UNTIL (c == 0) RETURN n (Assumuing the random number generator produces "good" random numbers in the mathematical sense.) I understand that there is no number $n \in \mathbb{N}$ such that the algorithm is guaranteed to terminate after fewer steps than $n$. However, the probability of terminating after *some* finite number of steps is 1. Is there a convention among computer scientists to call an algorithm like this either "terminating" or "non-terminating"?