#!/usr/bin/perl -w #This script pulls birthdays and determines their lucky number. use strict; use warnings; my $again; my $month_numeric; my $exists; my @numbers; print "Programmer: Shaun Fyall\n"; print "Course: COSC 146, Fall 2012\n"; print "Lab#: Home project 2\n"; print "Due date: 12/6/2012\n\n"; do { print "Enter an input filename: "; chomp(my $in = ); print "Enter an output filename: "; chomp(my $out = ); my $exists = 0; while ($exists == 0) { if (-e "$out") { print "The output file already exists, try again: "; chomp($out = ) } else { $exists = 1; } } #Move from file to array open(INPUT, "<","$in") or die $!; my @data = ; chomp(@data); # Convert month to number my %getmonthnum = qw( Jan 1 Feb 2 Mar 3 Apr 4 May 5 Jun 6 Jul 7 Aug 8 Sep 9 Oct 10 Nov 11 Dec 12); foreach my $val (@data) { my ($day, $month, $year) = split(/-/, $val); $month = $getmonthnum{$month}; $day = sumDigits ($day); $month = sumDigits ($month); $year = sumDigits ($year); print "$day, $month, $year"; } print "\nDo it again? (yes or no): "; chomp($again = lc ); }while ($again eq "yes"); sub sumDigits { my $num = @_[0]; my $sum = 0; do { $sum += $num % 10; $num = int($num / 10); # if ($sum > 9) # { # my $num2 = $sum; # my $sum2 = 0; # do # { # $sum += $num % 10; # $num = int($num / 10); # }while ($num != 0); # $num = 0; # $sum = $sum2; # } }while ($num != 0); return $sum; }