CS 302 Algebraic Language Programming
Section 70 (FORTRAN)
This section is taught entirely in the FORTRAN programming language
and is intended primarily for engineering students and non-computer
science majors. Click here
for a course description.
Menu
Lectures
- Section 70: 103 Psychology, 9:55 am MWF
Please be punctual to lectures to avoid disturbing the class.
- Office:
- Rm. 1306 Computer Science & Statistics, 1210 W. Dayton St.
- Office Hours:
- Wed 7:45 - 8:45 am, Fri 11:00 - 1:00 pm or by appointment
- Phone:
- (608) 262-6601 [office]
(608) 251-5193 [home, emergencies only]
- E-mail:
- bestor@cs.wisc.edu
(click here for finger)
- World-Wide-Web:
- http://www.cs.wisc.edu/~bestor/bestor.html
Grading Policy
Your final grade is based on seven programming assignments each
worth 5% (not including Program #0) and three exams. Your highest
two exam scores will each contribute 25% to your final grade; your
lowest exam score will contribute 15%. You must complete and hand
in all the assignments to be eligible to receive a passing
grade for the course. Final grades for all CS 302 sections are
graded on a curve with a mean in the range of 2.8 - 3.0, where A =
4.0; the curve is computed after the final exam is completed.
- Exam 1
- Thur February 29, 7:15 - 9:15 pm
- Exam 2
- Wed April 10, 7:15 - 9:15 pm, Rm. 1207 Computer Science
- Final
- Mon May 13, 7:55 - 9:45 am
Click here
to see a list of the current class grades (identifed by student ID
only).
Syllabus (tentative)
The following topics and sections of the text will be approximately
covered each week during the semester. You will only get the most
out of this class if you read the relevant sections of the text
before coming to class. This way you will be able to ask
questions in class about anything that you are unsure of, instead
of waiting until you're in the lab trying to work on an assignment
to discover you didn't really understand something.
- Weeks 1-6
(Mid-Term Exam #1)
- Weeks
7-11 (Mid-Term Exam #2)
- Weeks
12-15 (Final Exam)
Text and Lecture Notes
Text:
Fortran with Engineering Applications, 5th. edition, by E.
Koffman and F. Friedman, 1993.
Lecture Notes:
Copies of the lecture notes will be available on-line at the end of
each week of class. IMPORTANT - the on-line
lecture notes are not a substitute for coming to
class and only cover what I show on the overhead projector. They do
not include any examples or additional notes that I put on the
board. You are responsible for all the material
covered in class.
- Week
1
- Week
2
- Week
3
- Week
4
- Week
5
- Week
6
- Week
7
- Week
8
- Week
9
- Week
10
- Week
11
- Week
12
- Week
13
- Week
14
- Week
15
Exams and Programming Assignments
There are three exams: two mid-term exams and one final exam. Exams
constitute 65% of your final grade so it is very important to do
well on them to ensure a good grade, regardless of your performance
on the assignments. All exams are approximately two hours long
(though you may stay a bit longer if you need extra time) and are
closed-book. You only need to bring a pen or pencil to exams -
calculators are not necessary or even useful.
Exam Solutions:
There are seven programming assignments (not including Program #0)
each contributing 5% to your final grade. All the assignments must
be completed and handed in to be eligible to receive a passing
grade for the course. You must attempt to complete
every programming assignment. If you hand in a program that does
not run or will not even compile without errors then it will
not be graded and will automatically receive a
zero grade and you risk failing the course.
Assignment Specifications:
- Program
#1, due Monday 2/12/15/96, 9:55 am
- Program
#2, due Friday 2/23/96, 9:55 am
- Program
#3, due Wednesday 3/6/96, 9:55 am
- Program
#4, due Wednesday 3/27/96, 9:55 am
- Program
#5, due Friday 4/12/96, 9:55 am
- Program
#6, due Monday 4/29/96, 9:55 am
- Program
#7, due Friday 5/10/96, 1:00 pm
How to Get Help with Your Assignments:
- Consultants:
- The consultants in the computer lab can help you with most
problems. They wear name tags and are on duty from approximately
8:00 am to 11:00 pm. Consultants can answer short questions about
compiler error messages and program syntax, as well as how to
login, use the printers, send E-mail, run Netscape, etc.
- Click here
for more information about the consultants.
- Instructor:
- General questions about an assignment or questions that may
require a long explanation are best answered by myself. Please see
me during office hours or send me E-mail. I am not normally in my
office except during office hours because I do my dissertation
research from home via a modem. Therefore, if you want to see me
outside of office hours please make an appointment first. You can
most easily contact me by E-mail because I regularly login and read
my E-mail from home.
- Click here to send me
E-mail.
Problem Solving Exercises
One of the most important skills you will learn in this class is
problem solving. Good problem solving skills distinguish a
"good" computer programmer from a "bad" one - it doesn't matter how
familiar or skilled you are in a particular programming language,
if you do not understand how to solve the problem then you will not
be able to write a computer program for it in any
language.
To help you learn problem solving skills and techniques I will
assign weekly problem solving exercises. These will be small but
non-trivial problems which I will give out each Monday. You should
look at the problem and think about it during the week and right
down the steps you would go through to solve the problem; i.e. the
overall structure of your program. This is primarily an exercise in
general problem solving so you do not have to
write any FORTRAN code (though you may if you want to and have
time) and your solution/algorithm should not even be dependent on a
particular programming language such as FORTRAN. Each Friday we
will go over the solution in class.
Exercises:
- Week 3: Question 16, Pg. 89. Click here for the
solution.
- Week 4: Question 4, Pg. 147. Click here for the
solution.
- Week 5: Question 13, Pg. 218. Click here for the
solution.
- Week 6: Question 6, Pg. 269. Click here for the
solution.
- Week 7: Question 10, Pg. 329 (subroutines) - click here for the
solution; Question 11, Pg. 330 (functions) - click here for the
solution.
- Week 8: Question 5, Pg. 559. Click here for the
solution.
- Week 9: Question 8, Pg. 401. Click here for the
solution.
- Week 10: Question 6, Pg. 467. Click here for the
solution.
- Week 11: Question 5, Pg. 467. Click here for the
solution.
- Week 12: Question 3, Pg. 466. Click here for the
solution.
- Week 13: Question 5, Pg. 655.
Computer Lab
You will be using the Vectra lab in
Rm. 1350 Computer Science & Statistics containing Hewlett-Packard
Vectra's running Microsoft Windows and Microsoft FORTRAN. This lab
is open from 7:00 am to 1:00 am seven days a week except certain
holidays. The printer room is located across the hall in Rm. 1359.
You may also use your home or dorm computers to write your
programs, however you will probably have to purchase your own copy
of Microsoft FORTRAN or Lahey Personal FORTRAN (see the inside
cover of the textbook). You may also work in any of the other
computer labs on campus, however most do not have FORTRAN compilers
(please see me first before using the CAE lab).
The software you will be using in the lab includes:
Other Pointers of Interest