in reply to Re^3: Another newb question
in thread Another newb question

@everybody, Thanks for all the help!

@#333 I don't think I missed an error but it's certainly possible

Hopefully, this is my final question. When I print my array with printf each string should be printed in a right justifified 20 character column (i.e. the last letter should be indented 20 characters sort of like align left in word.) As per the book's request I created a ruler line to determine how far the last character was actually being indented and it is only being indented 19 characters. I can not figure out why. Any help would be appreciated. Thanks!

#!/usr/bin/perl use warnings ; use strict ; print "This program will display what you type in right justified 20 c +haracter columns.\nEnter text and press ctrl + d when done.\n" ; my @userin = <STDIN> ; print "1234567890" x3 ; foreach (@userin) { printf "%20s", $_ ; }

Replies are listed 'Best First'.
Re^5: Another newb question
by dasgar (Priest) on Aug 09, 2012 at 03:40 UTC

    Since you're reading in from STDIN, you might need to use chomp on the last element of your array.

    I haven't tested it, but you might be able to modify your foreach loop to something like below, which uses chomp on each element.

    foreach (@userin) { chomp; printf "%20s", $_ ; }