use strict; #use warnings; turned off for redundant printf warning my @MeasurementType = sort qw(MeasurementA MeasurementB MeasurementC MeasurementB MeasurementB); my @MeasurementValue = sort qw(1A 3A 3A 2A 5A); my @MeasurementTry= sort qw(1 1 1 2 3); my @MeasurementTime= sort qw(DateA DateB DateC DateD DateE); my $size = @MeasurementTry - 1; print ("MeasurementType | MeasurementValue | MeasurementTry | MeasurementTime\n"); print ("----------------|-----------------------|----------------|----------------\n"); for ( my $i = 0 ; $i <= $size ; $i++ ) { printf ("%-22s %-15s %-9s %-0s\n", ("$MeasurementType[$i]\t|", "$MeasurementValue[$i] \t|", "$MeasurementTry[$i]\t |", "$MeasurementTime[$i]")); } #### MeasurementType | MeasurementValue | MeasurementTry | MeasurementTime ----------------|-----------------------|----------------|---------------- MeasurementA | 1A | 1 | DateA MeasurementB | 2A | 1 | DateB MeasurementB | 3A | 1 | DateC MeasurementB | 3A | 2 | DateD MeasurementC | 5A | 3 | DateE