Applies a function repeatedly while a predicate holds.
NestWhile[f, expr, test]
NestWhile[f, expr, test, m]
NestWhile[f, expr, test, All]
NestWhile[f, expr, test, m, max]
NestWhile[f, expr, test, m, max, n]
NestWhile[f, expr, test, m, max, - n]
NestWhile[#/2 &, 8, EvenQ]
→ 1