FORTRAN PROGRAMMING
CS 200

SPRING 2006 SYLLABUS

Instructor | Texts | Pioneers | Objectives | Class Structure | Grading | Policies | Submissions | Readings | Unix and Fortran

Last Updated 10/11/06

You must attend a one of the one hour orientation session to the course that is offered at these three times in C102:

Please let the instructor know which of these times you will be attending.

NOTE: We will be using the GNU Fortran 77 compiler (g77) found on the Suns.  g77 is also downloadable to PC's as well.  I would recommend you use the Sun workstations for development and implementation.  This is the platform on which your programs will be tested and critiqued.

Also you will want to be sure you have xWin loaded or a telnet application (with VTxxx emulation and most do) on your PC to be able to connect to the Suns from your personal PC.  There are free such applications available.

Here are a few Unix command summaries:

 Unix for FORTRAN |
Unix Intro
| Unix File Commands | Unix File Management | Vi Editor


Instructor:

Loren Rhodes
E-mail: rhodes@juniata.edu
Office: C208 BAC,
Office phone and voice mail: 641-3620
Home phone: 643-6002

Office Hours

are kept current on my home page. See the home page or my office door for recent changes; others office hours may be arranged by appointment.

Required texts

Historical Note

Fortran is often mentioned wistfully by computer scientists as the first programming language they learned but then abandoned [e.g., Dr. Rhodes]. But many programming languages rose from the foundation that Fortran built.

From The New York Times, 13 June 2001, "Pioneers of the 'Fortran' Programming Language",By STEVE LOHR 


Objectives

The objectives of this course include the following:

The student should develop or enhance skills in the following areas:


Class structure

This is a self paced course with no formally schedule class meetings. Success in this course depends highly on your self discipline. Office hours are to be used to ask questions and clarifications. Individual  meetings with the instructor may be required to go over work in progress.

Reading

The reading will comprise of roughly 50 pages per week from Koffman & Friedman. Since you should have had programming experiences prior to this course and that this FORTRAN text assumes no such background, the reading should be relatively easy. Programming is highly encouraged to be done on the Sun workstations.

Assignments

The student is expected to do the reading as specified below prior to developing the associated program.  There is often a choice of program for each week's assignment. The student is expected to submit the assignment by Friday noon (see exceptions in the assignment descriptions) of the week via e-mail. The "how to submit" is described below.  The instructor will review the program by compiling and running the program with his own data set and reply with suggestions for improvements.  A grade will not be given on a per assignment basis.   If warranted, the assignment may be revised and resubmitted.

Comments and suggestions regarding each assignment will be posted on a personalized web page to which you will have an unlinked URL.  I will send by email the URL for your access.  It will be your responsibility to review the comments and make the corrections suggested.

Help

Being a self-paced course, some concepts may not be easily grasped from the readings. The instructor is available during office hours for individual help on these matters. Please use the office hours for clarification. Be sure that you have identified at least one office hour per week that you can regularly come for questions and have programs reviewed. We may be able to do most of the discussion and program review by email.

E-mail is an ideal and preferred communication medium for short questions or clarifications. A question asked by e-mail can easily be posted to this Frequently Asked Questions web page, for all in the course to see the questions and answers. The posers of questions will remain anonymous in the FAQ page.

Please send any questions with the subject line FORTRAN QUESTION so that I may more easily respond and organize the emails and FAQ's. Do not use FORTRAN PROGRAM QUESTION because "FORTRAN PROG" is my Inbox Assistant subject string to move received assignments to special folders.

 


Grading

The "portfolio method", analogous to the writing portfolios used in College Writing Seminar, will be used in this course. Students will be expected to submit programs to the instructor on a regular basis for review and critique. The first submission of a program must be received by the instructor by no later than Friday noon of the week designated below in the reading and assignment table. Programs may then be revised to include the suggestions given from the review and resubmitted.

The first submission of each completed and documented program must be received by the instructor by no later than Friday noon of the week designated below in the reading and assignment table. Programs may then be revised to include the suggestions given from the review and resubmitted.

There is a 1 percentage point deduction from the final grade for each day late per program.

When subsequent revisions are requested, they are due in one week from the time of the email notification.

FORTRAN Portfolio Overview

The final grade will be assigned based on the completeness, quality of the final programs in the portfolio, demonstrated improvement in programming skills over the course, timeliness of program submissions, attendance to the requested individual office meetings, and the reflection paper.

At the end of the course you must write a 2-3 page reflection paper describing what you learned about Perl and the process of learning a language on your own.  Send this paper electronically as your final submission.

All materials for the course, any final revised programs and the reflection narrative, must be submitted by Friday noon of Finals week--May 5, 2006.


Course policies

These standard course policies are described on this web page. Please read them carefully, especially on academic integrity. Exceptions to my standard policies are given below.

Attendance

Does not apply, but you must submit the FORTRAN programs on a regular basis.

Late program policy

Late first submissions will have a negative effect on your final grade. Typically 1% per school day late is deducted from your final grade. So a program 10 school days (2 weeks) late could reduce the final grade by a whole letter grade. However, extensions may be given in warranted situations that are agreed upon at least one day prior to the due date by instructor and student.

Please note that a program submitted which

will be rejected as a submission and therefore considered late. 


Program submission details

 

Tentative reading and assignment schedule

Caution! Many students in the past have lamented that they skipped the reading and simply started the exercises and found they had to spend more time overall to complete them. Discipline yourself to read the material carefully before starting the exercise for the chapter.  Start early each week to give yourself time to work through difficult concepts.

Due Date

Reading

Project Options (choose one each week)

Comments, Reminders

week 1
1/20/06

p 1-24 (ch 1) p 22 #1 Compile, link and run this program (on pages 16-17). Send me just the source file.

week 2
1/27/06

p 26-86
(ch 2)
p 88 #11, 14 or 16 Enter, create a short sample data set of your own in addition to any data given in the problem of your choice, and run this program. Send me the source file.

week 3
2/5/06

p 92-147
(ch 3)
p 150 #13 or p 151 #17 Be sure to create a test suite sufficient to check all conditions.  Send me the source and your test suite in separate files.

weeks 4- 5
WEDNESDAY
2/15/06

p 153-212
(ch 4)
p 215 #3 or p 217 #9 Write a page description of what you've observed in either of these programs. Send this along with the source.

week 6
WEDNESDAY
2/22/06

p 221-247
(ch 5)
p 268 #2 or p 270 #8 Your output is to be well formatted. Input for #8 can be written interactively. Send the source

week 7
3/3/06

p 247-267
(ch 5)
p 270 #6 Create an input data file of your own. Send the data and the source.

week 8
3/17/06

p 275-324
(ch 6)
p 330 #11 or #13 The formula for #11 should not have the factorial in the denominators. Write a page description of what you've observed in either of these programs. Send this with the source.

weeks 9- 10
3/31 /06

p 337-398
(ch 7)
p 403 #14 or #16 Formatting, top down design, good use of arrays. Send me your source and data files (data from book).

weeks 11-12
WEDNESDAY
4/12/06

p 407-462
(ch 8)
p 470 #13 or p 472 #16 Demonstrate 3 runs by submitting three data files with the source.

week 13
WEDNESDAY
4/19/06

p 479-515
(ch 9)
P 519 #4 or p 520 #7 Trap for out-of-order errors. See the instructor for the merge algorithm if you're not familiar with it. Submit the source and your test suite.

week 14
4/28/06

p 523-558
(ch 10)
p 562 #13 or 564 #18 Demonstrate 3 runs by submitting three data files with the source.