Hello WisDomSeeKer34, and welcome to the Monastery!
Since you want the message to repeat (if necessary), you need a loop. In this case, changing if to while is all you need. :-)
Update: It might be clearer to use until here rather than while — that allows you to write the condition in the form of a specification. Also, the loop and the calls to <STDIN> should be placed in the subroutine:
sub choose { say "choose a number: 1 2 3 4 5 "; my $choice = <STDIN>; until ($choice >= 1 && $choice <= 5) { say "You have chosen the wrong number"; $choice = <STDIN>; } return $choice; }
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
In reply to Re: Looking for a loop
by Athanasius
in thread Looking for a loop
by WisDomSeeKer34
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |