Here's one way to do it:
print "Enter some lines, then press Ctrl-D:\n"; # or maybe Ctrl-Z @lines = <STDIN>; @reverse_lines = reverse @lines; print @reverse_lines;
...or, even more simply:
print "Enter some lines, then press Ctrl-D:\n"; print reverse <STDIN>;
Most Perl programmers would prefer the second one, as long as you don't need to keep the list of lines around for later use.
Here's one way to do it:
@names = qw/ fred betty barney dino wilma pebbles bamm-bamm /; print "Enter some numbers from 1 to 7, one per line, then press Ctrl-D:\n"; chomp(@numbers = <STDIN>); foreach (@numbers) { print "$names[ $_ - 1 ]\n"; }
We have to subtract one from the index number so that the user can count from 1 to 7 even though the array is indexed from 0 to 6. Another way to accomplish this would be to have a dummy item in the @names array, like this:
@names = qw/ dummy_item fred betty barney dino wilma pebbles bamm-bamm /;
Give yourself extra credit if you checked to make sure that the user's choice of index was in fact in the range 1 to 7.
Here's one way to do it, if you want the output all on one line:
chomp(@lines = <STDIN>); @sorted = sort @lines; print "@sorted\n";
...or, to get the output on separate lines:
print sort <STDIN>;
Copyright © 2002 O'Reilly & Associates. All rights reserved.