eintr: Decrementing Example

 
 Example with decrementing counter
 .................................
 
 To illustrate a loop with a decrementing counter, we will rewrite the
 ‘triangle’ function so the counter decreases to zero.
 
    This is the reverse of the earlier version of the function.  In this
 case, to find out how many pebbles are needed to make a triangle with 3
 rows, add the number of pebbles in the third row, 3, to the number in
 the preceding row, 2, and then add the total of those two rows to the
 row that precedes them, which is 1.
 
    Likewise, to find the number of pebbles in a triangle with 7 rows,
 add the number of pebbles in the seventh row, 7, to the number in the
 preceding row, which is 6, and then add the total of those two rows to
 the row that precedes them, which is 5, and so on.  As in the previous
 example, each addition only involves adding two numbers, the total of
 the rows already added up and the number of pebbles in the row that is
 being added to the total.  This process of adding two numbers is
 repeated again and again until there are no more pebbles to add.
 
    We know how many pebbles to start with: the number of pebbles in the
 last row is equal to the number of rows.  If the triangle has seven
 rows, the number of pebbles in the last row is 7.  Likewise, we know how
 many pebbles are in the preceding row: it is one less than the number in
 the row.