Courses

Computer Science Courses (CSC)

CSC-150   Computer Science I4 credits

Prerequisites: MAT-149 or MAT-151 or MAT-152 or equivalent. The prerequisite course must be passed with a minimum grade of C.

An introduction to the disciplines of computer programming using an object-oriented language (most recently C++). Basic computer hardware and software architectures are briefly presented. Topics include: methodologies for program design, development, testing and documentation; algorithms, control structures, objects, classes, elementary data structures, and numerical computation. Concepts and skills are mastered through programming projects. No previous programming experience is assumed.

CSC-151   Computer Science II4 credits

Prerequisites: CSC-150 or equivalent course passed with a minimum grade of C.

Further study of more sophisticated uses of object-oriented concepts (inheritance, polymorphism, method overloading and multiple inheritance of interfaces). Includes an introduction to the study of algorithm analysis and measurement methods, recursion, sorting, and searching. Algorithms and data structures are presented as needed to support discussion of these topics. Concepts and skills are mastered through programming projects.

CSC-231   Computer Architecture & Assembly Language Programming I3 credits

Prerequisites: CSC-150 or equivalent course passed with a minimum grade of C.

Computer, processor, and memory components. Basic circuits and digital logic. Binary number systems, arithmetic, and data representation. Instruction set and addressing modes. Machine language, assembly language, and assembly language programming.

CSC-232   Special Programming Languages2 credits

Prerequisites: CSC-150 or equivalent course passed with a minimum grade of C.

This course may be repeated as different topics are covered. Computer programming using a high level programming language which is different from the one taught in CSC-150.

CSC-294   Independent Study3 credits

Prerequisites: Permission

May be repeated up to a maximum of 4 credits and is subject to arrangement with the Mathematical and Physical Sciences Department. This course does not fulfill the core requirement for independent work. See independent study guidelines. See independent study guidelines.

CSC-331   Computer Architecture & Assembly Language Programming II3 credits

Prerequisites: CSC-231 with a minimum grade of C.

Processor architecture, interrupt handling external device interfacing. Advanced assembly language programming. Device communication and relation to the runtime environment.

CSC-333   Data Structure & Algorithms3 credits

Prerequisites: CSC-151 and, MAT-151 or MAT 252, or equivalent. The prerequisite courses must be passed with a minimum grade of C.

A study of fundamental algorithms, data structures, and their effective use in a variety of applications. The importance of data structure choice and implementation for obtaining the most efficient algorithm for solving a given problem will be studied. A key component of this course is the worst-case asymptotic analysis, which provides a quick and simple method for determining the scalability and effectiveness of an algorithm. Other topics covered generally include: divide-and-conquer algorithms, sorting algorithms, hashing, stacks, queues binary heaps, skip lists, trees, basic graph algorithms. Concepts and skills are mastered through programming projects. Offered Spring terms of even numbered years.

CSC-494   Independent Study1 - 3 credits

Prerequisites: Junior or senior standing.

May be repeated up to a maximum of 4 credits and is subject to arrangement with the Mathematical and Physical Sciences Department. See independent study guidelines. See independent study guidelines.

CSC-497   Internship1 - 3 credits

Prerequisites: Junior or senior standing and permission.

Individually arranged programs of work and study with the department, academic institutions, private industries, or government agencies. See internship guidelines. See internship guidelines.