on writing a while loop for rolling two dice
Dennis Lee Bieber
wlfraed at ix.netcom.com
Sun Sep 5 12:50:21 EDT 2021
On Sat, 4 Sep 2021 12:27:55 -0500, "Michael F. Stemper"
<michael.stemper at gmail.com> declaimed the following:
>
>Kernighan and Ritchie agree(d) with you. Per _The C Programming
>Language__:
> Experience shows that do-while is much less used that while
> and for.
>
And just for confusion, consider languages with "repeat / until"...
"do / while" repeats so long as the condition evaluates to "true";
"repeat / until" /exits/ when the condition evaluates to "true".
Then... there is Ada...
While one is most likely to encounter constructs:
for ix in start..end loop
...
end loop;
and
while condition loop
...
end loop;
the core construct is just a bare
loop
...
end loop;
which, with the "exit when condition" statement allows low-level emulation
of any loop... (same as Python "if condition: break"
loop -- "while" loop
exit when not condition;
...
end loop;
loop -- "repeat / until"
...
exit when condition;
end loop;
loop -- split
...
exit when condition;
...
end loop;
{I'm not going to do the "for" loop, but one can easily manage
initialization/increment/test statements}.
To really get your mind blown, look at loops in REXX...
do while condition
...
end
do until condition
/* note that the termination parameter is listed at top, */
/* but takes effect at the bottom, so always one pass */
...
end
do forever
...
if condition then
leave
...
end
do idx = start to end /* optional: by increment */
...
end
do idx = 1 by increment for repetitions
...
end
AND worse! You can combine them...
do idx = start for repetitions while condition1 until condition2
...
end
{I need to check if both while and until can be in the same statement}
--
Wulfraed Dennis Lee Bieber AF6VN
wlfraed at ix.netcom.com http://wlfraed.microdiversity.freeddns.org/
More information about the Python-list
mailing list