|
Howard University College of Engineering, Architecture, & Computer Sciences Department of Systems & Computer Science Washington, D.C. 20059 |
Elementary Computation 306-165-01
Spring 2000 Draft Syllabus
|
Instructor : Office : Phone : Office Hours : |
Moses Garuba Room LKD-2119 (IMA) (202) 806-4827 TBA |
|
Lecture Room : Day : Time : |
LKD 2006 Mondays, Wednesdays & Fridays 2:10 - 3:00 PM |
Textbooks
Required: Fortran 77 for Engineers and Scientists by Larry Nyhoff and Sanford Leestma, Prentice Hall, ISBN 0-13-363003-X, 1996.
Desired: Fortran 90 by Loren Meissner, PWS-ITP, ISBN 0-534-93372-6, 1995.
Objectives
The objective of this course is to introduce students to programming and the use of digital computers. Generic programming concepts such as problem solving and the systematic development of algorithms will be explored. Programming tasks will require the application of these fundamental concepts to solving real engineering problems. The student will also be exposed to the practice of operating computers and peripheral equipment.
Prerequisites
The prerequisites for this course include College Algebra and Plane Geometry. Experience in development environments such as LINUX, UNIX, Windows NT is desirable but not required.
The course will cover computation from a variety of engineering application areas, but the course is intended to be self-contained with respect to such topics.
Attendance at lectures is expected. Copies of lecture notes (transparencies used in lecture) will be distributed to students when available. Students are fully responsible for all material presented in lectures, even if some of it does not appear in these notes.
Assignments and Exams
There will be ten programming assignments. Generally, they will be handed out on a Friday, with electronic submission due six days later on the next Friday (at 2:10 PM). Your program must be clearly "commented".
There will also be ten weekly problem sets. These will be handed out on Monday and due at precept the following week. These will consist of short questions on the material in the lectures, notes, and programs.
There will be a midterm exam on the Wednesday before break, which will cover all material up to and including the lecture on the previous Monday. The final exam will cover all material in the course.
Grading Policies
You will write some programs for the programming assignments, run them, and submit the code electronically. The code rarely speaks for itself, however, and it is your responsibility to make sure that it is clearly "modularized" and "commented".
Grades on the programming assignments and problem set questions will be: 10(perfect in every way), 9(outstanding), 8(excellent), 7(very good), 6(good), 5(not bad), 4(poor), 3(minimal effort), 2(bad), 1(hopeless), or 0(not handed in).
The programming assignments, problem sets, and exams all contribute significantly to your grade. Specifically, your final course grade will be calculated as follows:
In calculating your course grade, we will drop the lowest programming assignment score. Thus, you may choose to "punt" one programming assignment, or you may choose to do them all in an attempt to learn more or to maximize your grade. The precise values of these weights are not nearly as important to you as it is to be sure that you hand in all the work assigned. Doing so will help you if your grade is borderline at the end.
Assignments submitted late will NOT be marked unless under exceptional circumstances.
There will no extensions due to scheduling conflicts, computer downtime, or other such factors, except under truly extraordinary circumstances. Extensions will be granted only for university-sanctioned excuses such as illness, and then only with the proper documentation. You are responsible for planning ahead and managing your time so that you can complete the assignments on time. You must either finish on time or accept the consequences of doing otherwise.
Computers
You may develop your programs on any machine that you like. However, your finished programs must run on the HP-AUX Server or NT-Server in LKD-Room 2117 in the Engineering building. Programs must be written in the Fortran-77 programming language. All validated students in the School of Engineering (CEACS) should seek to obtain new accounts or re-activate existing accounts in the CLDC Lab. Students who had accounts in past semesters will have the same login (userid) and password. Other students must contact the relevant system administrators to obtain an account or re-activate a dormant account.
Rights and Responsibilities
Problem sets should reflect your own work. Collaboration is inappropriate for the specific problems in the problem sets, though working with lab assistants and other students in the class on similar problems is highly encouraged.
Programming, like composition, is an individual creative process. Individuals must reach their own understanding of the problem and discover a path to its solution. During this time, discussions with friends are encouraged. However, when the time comes to write the code that solves the problem, such discussions are no longer appropriate -- the program must be your own work (although you may ask lab assistants for help in debugging). If you have a question about how to use some feature of Fortran 77, LINUX, UNIX, etc., then you can certainly ask your friends or the lab assistants.
Do not, under any circumstances, copy another persons program. Writing code for a fellow student or using another students code in any form violates the University's academic regulations and will be dealt with harshly. Beware that programs can be scanned for similarities in structure, syntax, and logic.
Submitting Programming Assignments
Submit your solutions to the programming assignments electronically during lectures or in person to room LKD-2119 (IMA Lab). Include all files required for the program to execute.
Keeping in Touch
The best way to contact the instructor is by electronic mail. To raise matters pertaining to the course or get help, send e-mail to: [email protected]
|
SCHEDULE OF LECTURES |
|||
|
Week Beginning |
Topic |
Reading Assignment |
Key Events |
|
01/10/2000 |
Introduction to Computing: |
Read Chapter 1 |
17th January 2000 MLK Day Observed |
|
01/30/2000 |
Basic Fortran: |
Read Chapter 2 |
|
|
02/13/2000 |
Selective Execution: |
Read Chapter 3 |
21st February 2000 Presidents Day Observed |
|
02/27/2000 |
Repetitive Execution: |
Read Chapter 4 |
16th March 2000 Mid-Term Exam
19th 25th March Spring Recess Observed |
|
03/26/2000 |
Input/Output:
|
Read Chapter 5 |
|
|
4/09/2000 |
Programming Styles:
|
Read Chapter 6 |
|
|
4/23/2000 |
Arrays: |
Read Chapters 8 and 9 |
Reading Period
Final Exam Week |
Beware!
The instructor reserves the right to change the course content, omit parts of the topics listed above or introduce new material midstream to supplement the course text.