Friday Finking: Contorted loops
Alan Gauld
alan.gauld at yahoo.co.uk
Sat Sep 11 13:21:17 EDT 2021
On 11/09/2021 15:41, Peter J. Holzer wrote:
> How is C's do/while loop more horrible than Pascal's repeat/until?
Because it is very hard to spot or distinguish from a normal
while loop.
while condition ;
Is a valid (and fairly common) loop in C
so code that has
do{
code
}
while condition;
Looks, for non-trivial cases, like a lot of code followed
by an empty while loop.
The do is easy to miss and the while loop disguised as
a repeat termination is confusing.
repeat
code
until condition
Is far clearer to comprehend since there is no ambiguity.
> In an old collection of small C programs of mine I find:
>
> 35 regular for loops
> 28 while loops
> 2 infinite for loops
> 1 "infinite" for loop (i.e. it exits somewhere in the middle)
> 0 do/while loops.
That wouldn't surprise me, I've only used do/while in C
a handful of times. But in Pascal I use it regularly.
--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.amazon.com/author/alan_gauld
Follow my photo-blog on Flickr at:
http://www.flickr.com/photos/alangauldphotos
More information about the Python-list
mailing list