I agree, that simple loops that you describe are easier to analyse than full recursion.<p>But simple loops are not as expressive as full loops (where you can modify the loop variable). As a simple example, try to phrase the Euclid&#x27;s algorithm for computing the GCD using &quot;for(int i = 0; i &lt; n; i++) { ... }&quot; where &quot;i&quot; is not modified in the loop body.