SELF STUDY IN A PROGRAMMING SYSTEM: FORTRAN 90
CS 2304
Index 1367
Spring 1999

Instructor:             Dr. Dulal Kar
Office:                     McBryde 625
Phone:                     231-7537
E-Mail:                    dkar@cs.vt.edu
Office Hours:           9:00 - 10:00 am MWF
                               1:00 - 2:00 pm TTh

Text:                     Fortran 90 Programming
                              T.M.R. Ellis, Ivor R. Phillips, and Thomas M. Lahey
                              Addison-Wesley Publishing

Material:              Course notes for CS1014 can be used for this course as well.

Software:

Web Information: Final Examination: Only one exam will be given.May 7, 1999; 7:45a.m.-9:45a.m..

Prerequisites:         CS 1024, CS 1034, CS 1044, EF 1005 or equivalent.

Course Objective:
To provide an introduction to programming in Fortran 90 for solutions of typical numerical and non-numerical problems encountered in arts , sciences, and business.
Catalog Description: Grading Policy: Course Policies: 1. Be aware that each of your programs will be compiled and tested using Essential Lahey Fortran 90 (ELF90) package running under DOS or Windows. The automated grader will give you a zero if your program does not compile and link under ELF90.

2. In addition to automatic grading, some (maybe all) of your projects will also be graded manually for style and documentation. Keep in mind that your programs must be readable, well-structured, and well-documented. You must follow the Computer Science Department documentation standards. Points will be deducted if your program does not meet the standards set by the Department.

3. You must maintain backup copies of your work on your personal computer’s hard disk as well as on floppy disks. It is always a good idea to maintain printed copies of all of your work as well.

4. The due date and the time for each programming project will be announced on the web. Unless otherwise announced on the web, all works turned in late will incur a penalty of 20% per day . The automated grader will be setup to receive the electronic submission for a project up to five days late. Note that any kind of hardware or software failure or machine unavailability in McB 116/118 Lab or a few hour shut-down of the automated grader server does not merit an extension. Hence plan ahead and complete your work as soon as possible.

5. All questions concerning a project must be resolved within one week. It is always a good idea to keep all of your work until the end of the semester. In case of any recording errors or doubts, you may produce them for correction or verification.

6. There will not be any class meetings for this course. You must check the course web page or maintain correspondence with the instructor for assignments, announcements, changes in schedule, and so forth.

7. All work to be turned in for programming projects must be your own work. You cannot work with anyone else. You cannot receive any solution from anyone else or discuss the project towards a solution with anyone else. You may seek help from the instructor during office hours. Remember, the instructor is obligated to take action or to report any kind of violation of the Honor Code to the authority. However, for the last three projects, you are allowed to choose a partner, work together, and share the solutions with your project partner only.

Honor Code: All work to be turned in for grading must be performed under the provisions of the Virginia Tech Honor System and the Departmental Koofers Policy. You are responsible for reading and being informed about those policies (check web pages).   Course Outline: This course outline is based on the course notes for CS1014. You may follow the following outline for your reading.   1. Introduction Problem solving: Simple Fortran program
Computer systems: Hardware and software
Number systems, Computer arithmetic
2. Programming Process Algorithms, Program translation
Top-down design, Program documentation
3. Fortran Fundamentals Fortran language elements
Statements, Variables, Data types
Arithmetic Expressions
4. Input/output List-directed input and output of numeric data
Format and edit descriptors
Input/output using embedded formats
FORMAT statements, Input/output statements
Carriage control characters
File input/output and formatting
5. Preliminary Material Read loop
Built-in functions
Programming style and documentation
Prgramming /logic constructs
6. Selection Logical variables and expressions
Block IF statement, Logical IF statement, Nested IF statements
CASE construct
7. Looping Structures Block DO construct
Count controlled DO loops
DO loop components, DO loop execution
8. Basic Building Blocks Subprograms, procedures, and functions
External functions, Subroutines, Modules
Parameters and arguments
9. Arrays Array declaration, Input/output with arrays
Array valued functions, Multidimensional arrays
Array processing and matrix manipulation
10. Sorting Selection sort, Bubble sort, Examples 11. Searching Linear search, Binary search 12. Strings Character data and variables
Character strings, Substrings
String functions and operations


Back to top
Back to cs2304 home page