Grant Hansen wrote:
> 
> Can someone tell me what is wrong with this.
> 
> Upon entering a 0 I want to break out of the loop and continue processing the
> data in @data.
> 
> $quit = 0;
> while (! $quit) {
>     chomp(@data = <STDIN>);;
>     if ($data == 0) {
>         $quit = 1;
>                     }}


If you want to stop input based on what the user entered on the command
line then you have to read ONE line at a time and not use an array for
input.  BTW your loop will only read numbers and not strings because the
test '== 0' will evaluate strings in a numerical context which are
always equal to 0.

while ( my $input = <STDIN> ) {
    chomp $input;
    last if $input == 0;
    push @data, $input;
    }



John
-- 
use Perl;
program
fulfillment

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to