BUILT-IN MATHEMATICA SYMBOL

# NestWhileList

NestWhileList[f, expr, test]
generates a list of the results of applying f repeatedly, starting with expr, and continuing until applying test to the result no longer yields True.

NestWhileList[f, expr, test, m]
supplies the most recent m results as arguments for test at each step.

NestWhileList[f, expr, test, All]
supplies all results so far as arguments for test at each step.

NestWhileList[f, expr, test, m, max]
applies f at most max times.

## DetailsDetails

• The last element of the list returned by NestWhileList[f, expr, test] is always an expression to which applying test does not yield True.
• NestWhileList[f, expr, test, m] at each step evaluates . It does not put the results in a list.
• The are given in the order they are generated, with the most recent coming last.
• NestWhileList[f, expr, test, m] does not start applying test until at least m results have been generated. »
• NestWhileList[f, expr, test, {mmin, m}] does not start applying test until at least results have been generated. At each step it then supplies as arguments to test as many recent results as possible, up to a maximum of m. »
• NestWhileList[f, expr, test, m] is equivalent to NestWhileList[f, expr, test, {m, m}]. »
• NestWhileList[f, expr, UnsameQ, 2] is equivalent to FixedPointList[f, expr]. »
• NestWhileList[f, expr, test, All] is equivalent to NestWhileList[f, expr, test, {1, Infinity}]. »
• NestWhileList[f, expr, UnsameQ, All] goes on applying f until the same result first appears more than once.
• NestWhileList[f, expr, test, m, max, n] applies f an extra n times, appending the results to the list generated. »
• NestWhileList[f, expr, test, m, max, -n] drops the last n elements from the list generated. »

## ExamplesExamplesopen allclose all

### Basic Examples (2)Basic Examples (2)

Keep dividing by 2 until the result is no longer an even number:

 Out[1]=

Iterate taking logarithms until the result is no longer positive:

 Out[1]=