use strict; use warnings; use feature qw(say); use constant { STUDENT => 0, FIRST_QUIZ => 1, LAST_QUIZ => 3, FIRST_EXAM => 4, LAST_EXAM => 5, FINAL => 6, }; while () { my @fields = split /,/, $_; say "Student:", $fields[STUDENT]; say "Quizzes:", join ", ", @fields[FIRST_QUIZ..LAST_QUIZ]; say "Exams:", join ", ", @fields[FIRST_EXAM..LAST_EXAM]; say "Final:", $fields[FINAL]; say "-----" } __DATA__ Allen Bailey,90,95,80,98,76,89 Carole Daily,9,9,8,9,7,8 Evan Fairly,50,75,10,82,64,79 #### Student:Allen Bailey Quizzes:90, 95, 80 Exams:98, 76 Final:89 ----- Student:Carole Daily Quizzes:9, 9, 8 Exams:9, 7 Final:8 ----- Student:Evan Fairly Quizzes:50, 75, 10 Exams:82, 64 Final:79 -----