Presentation is loading. Please wait.

Presentation is loading. Please wait.

Prof. Alfred J Bird, Ph.D., NBCT Office – McCormick 3rd floor 607 Office Hours – Tuesday and.

Similar presentations


Presentation on theme: "Prof. Alfred J Bird, Ph.D., NBCT Office – McCormick 3rd floor 607 Office Hours – Tuesday and."— Presentation transcript:

1 Prof. Alfred J Bird, Ph.D., NBCT abird@cs.umb.edu http://it441-s14-bird.wikispaces.umb.edu/ Office – McCormick 3rd floor 607 Office Hours – Tuesday and Thursday 4:00 PM to 5:15PM

2  Write a program that: Asks you the numeric value of the month and the year you were born, creates an array called @months with the names of the months and an array called @numDays that contains the number of days in a month (remember leap years) and use these arrays in a print statement to print out the month, the year and how many days are in the month you were born based on the info you entered.

3  Write a program that: Asks you the numeric value of the month and the year you were born, creates an array called @months with the names of the months and an array called @numDays that contains the number of days in a month (remember leap years) and use these arrays in a print statement to print out the month, the year and how many days are in the month you were born based on the info you entered. #!/usr/bin/perl/ print “Enter the number of the month you were born: “; chomp ($month = ); print “Enter year you were born: “; chomp ($year = ); @months = qw&January February March April May June July August September October November December&; @numDays = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); $numDaysCorrect = $numDays[$month-1]; if ($month==2 && $year%4==0){$numDaysCorrect=29;} print (“$months[$month-1] $year has $numDaysCorrect days \n”);

4  Write code using the previous program that will print out a series of statements like the following:  The month of January has 31 days  …  Assume you do not know how many entries there are in the arrays but that both arrays have the same numbers of entries

5  How do we add data to an array?  @array = (@array, $scalar); #is one way!  But there is a better way!!  push @array, $scalar; #will do the same thing!  push will append the value in $scalar to the top of @array  Likewise pop will take the last value in an array and do something with it.  $scalar = pop @array

6  push() and pop() act on the top of an array (the highest indexed end)  shift() and unshift() act on the bottom of an array and perform the same function.  We already know what reverse() does.

7  Another function is sort().  What do you think it does?  Write a simple program to try it with your array of months.  Predict the output before you try it.  What happened?  Now write a simple program to try it with an array of number between 0 and 100 (at least 20 numbers).  Predict the output before you try it.  What happened?????  Why?????

8  What is a namespace?  What is a package?  Packages are perl files with.pm extn and are considered a separate namespace. So a package is nothing but group of related scalars,arrays,hashes and subroutines for a specific purpose. Once a package is included in a.pl file (using "use") and you want to call one of the subroutines of the package, you may have to use the scope resolution operator &package::subroutine1

9  What is a module?  Modules are packages which have the capabilities of exporting selective subroutines/scalars/arrays/hashes of the package to the namespace of the main package itself. So for the interpreter these look as though the subroutines are part of the main package itself and so there is no need to use the scope resolution operator while calling them.

10  Why use PERL?\  What other languages could we use?  Ruby, Python, Scripting…..  TIMTOWTDI!!  Other people have already done it!  http://www.perl.org http://www.perl.org  http://www.cpan.org http://www.cpan.org  http://www.perlmonks.org http://www.perlmonks.org

11  Read pages 95 to 114 in the textbook.


Download ppt "Prof. Alfred J Bird, Ph.D., NBCT Office – McCormick 3rd floor 607 Office Hours – Tuesday and."

Similar presentations


Ads by Google