http://www.perlmonks.org?node_id=401962


in reply to do while loops

ok.. the code is bad. That situations cause problems to novices

$value=5 <------ ok that is the problem it does not have ; do{ print "$value\n"; $value=$value-1; } while($value>10);

ok the correct code is

$value=5; # now have ; do{ print "$value\n"; $value=$value-1; } while($value>10);

have a fun

20041024 Edit by ysth: change p tags to code

Replies are listed 'Best First'.
Re^2: do while loops
by Anonymous Monk on Jan 20, 2006 at 22:10 UTC
    Actually, I think the problem is larger than that.
    shouldn't it be:
    $value = 15; # 15, not 5. 5 doesn't make sense if we're not increment +ing. do { print "$value\n"; $value = $value - 1; } while($value > 10);

    jdporter fixed formatting

      The point was that the test happens at the end, so the loop executes once even if the value starts out < 10.

      Caution: Contents may have been coded under pressure.