COURSE DESCRIPTIONS: COMPUTER SCIENCE

CSC 107: COMPUTER LITERACY. This course is an introduction to the study of computer Science. Topics will include: the impact of the computer on human events and social institutions, computer ethics, the economic impact of computers in society, data and information processing; the organization of a computer, input and output devices; number systems; internal data representation; and a discussion on programming languages. Students will get hands on experience with a word processor, spreadsheet, a database and the Internet. Offered every semester. Prerequisite: None. CREDIT: THREE SEMESTER HOURS.

CSC 112: COMPUTER FUNDAMENTALS AND PROBLEM SOLVING.  This course is an introduction to the study of computer science for computer science majors.  Topics will include: the impact of the computer on human events and social institutions, computer ethics, the organization of a computer, number systems, and internal data representation.  Students will get hands on experience with a word processor, spreadsheet, a database and the Internet.  This course will also provide an introduction to problem solving techniques in computer programming.  The emphasis will be on developing interdisciplinary algorithms using flowcharting and pseudo-language.  Prerequisite:  None.  CREDIT:  THREE SEMESTER HOURS.

CSC 206: BASIC PROGRAMMING. Introduction to the BASIC computer language. Typical topics include I/O, decisions and loops, simulation, nested loops, subscripted variables, programming techniques, mathematical functions, subroutines, error handling, data types, string functions, sequential and virtual files, and record I/O files. Co-requisite: MAT 103. CREDIT: THREE SEMESTER HOURS.

CSC 221: FUNDAMENTAL PROGRAMMING I.  Emphasis on algorithm development through the use of a pseudo-language or flowcharts. Topics include procedures, functions, parameters, correctness, efficiency, decisions, iteration.  Offered every Fall. Co-requisite: MAT 103 or consent of the instructor. CREDIT: THREE SEMESTER HOURS.

CSC 222: FUNDAMENTAL PROGRAMMING II.  Topics include:  testing recursion, searching and sorting. Data structures include simple lists, character data, multi-dimensional tables, records, programmer-constructed data structures including linked lists, and external files. Offered every spring. Prerequisite: CSC 221.  CREDIT: THREE SEMESTER HOURS.

CSC 321: ASSEMBLY LANGUGAGE.  Introduction to an assembly language. Typical topics include number systems and conversion, computer organization and data storage, statement formats, addressing modes, and available instruction, dumps, subroutines and an introduction to macros, and conditional assembly. Offered every fall. Prerequisites: CSC 221-222 or at least two semesters of high-level languages. CREDIT: FOUR SEMESTER HOURS.

CSC 329: COMPUTER ORGANIZATION. Typical topics include processors, memory, I/O , Boolean algebra, gates and logic circuits, microprocessors and an introduction to architecture and operating systems. Offered every spring.  Prerequisite: CSC 321. CREDIT: THREE SEMESTER HOURS.

CSC 338: NUMERICAL ANALYSIS. The topics include finding roots of a nonlinear equation, solving systems of linear equations, matrix inversion, interpolation, numerical integration and differentiation, and solutions of ordinary differential equations. Prerequisite: At least one semester of a programming language or permission of the instructor. Offered every fall. Co-requisite: MAT 316 or permission of the instructor. CREDIT: THREE SEMESTER HOURS.

CSC 340: JAVA PROGRAMMING.  This course provides students with a comprehensive knowledge and hands-on experience with the Java programming environment and features. Students will design, write, debug, and run Java stand-alone programs and Java Applets. Topics covered include: Java language syntax, operators, statements, arrays, string manipulation classes, common classes, basic I/O operations, exception handling, object-oriented analysis and design, and graphical user interfaces.  Prerequisite:  CSC222.  CREDIT:  THREE SEMESTER HOURS.

CSC 341: DATA STRUCTURES. Data structures and implementation of algorithms. Typical topics include list processing, queues, stacks, recursion, trees, graphs, storing and searching. Offered every fall. Prerequisite: CSC 222. CREDIT: THREE SEMESTER HOURS

CSC 350: PRINCIPLES OF PROGRAMMING LANGUAGES. Study of the organization and specification of programming languages, and the use of languages on solving problems. Syntax and basic characteristic of grammars, data types, and structures, control structures and data flow, run-time consideration, interpretative languages, lexical analysis, and parsing. Offered every fall. Prerequisite: CSC 341 Data Structures. CREDIT: THREE SEMESTER HOURS.

CSC 352: OPERATING SYSTEMS. Exploration of the interface between the computer user and the hardware. Emphasizes the history of the development of operating systems and the problems associated with the development of an operating system. Typical topics include file systems, CPU scheduling, and memory and device management. Offered every fall. Prerequisite: CSC 222 and CSC 329 or permission of the instructor. CREDIT: THREE SEMESTER HOURS     

CSC 370: UNIX/C PROGRAMMING.  Provides a working knowledge of the use and administration of UNIX environments.  This course will build on knowledge from Data Structures and Operating Systems.  The students will solve real-world problems using the C programming language.  Possible topics include editors, file systems, shell programming, TCP/IP, regular expressions, system and network administration.   Prerequisite:  CSC341 and CSC352.  CREDIT:  THREE SEMESTER HOURS.

CSC 422: DATABASE SYSTEMS. Analysis and manipulation of typical database architectures. This course will introduce the student to basic database concepts and design. It will present a general architecture for database systems and focus specifically on the relational model. The SQL language will be introduced and entity-relationship models will be used in database design. The student will get practical experience with database implementation through group or individual projects. Typical topics include query languages, relational database, hierarchical databases and network databases. Offered every spring Prerequisite: CSC 341. CREDIT:  THREE SEMESTER HOURS

CSC 430: INTERNSHIP.  The student will work for an educational, social or professional organization under the direction of the instructor.  The student will engage in fieldwork that is designed to provide computer experience related to the student’s interest. Offered every spring.  Prerequisite: CSC 222. CREDIT:  THREE SEMESTER HOURS.

CSC 435: DATA COMMUNICATIONS.  To provide the basic knowledge of data communication architecture, protocol, error detection/correction mechanisms and design and implementation of data communication equipment. Topics include: Network Design and Distributed Information Systems’ Equipment, Protocols, Architecture, and Transmission alternatives. Offered every spring. Prerequisite: CSC 341. CREDIT: THREE SUMMER HOURS     

CSC 455:  SELECTED TOPICS IN COMPUTER SCIENCE.  Typically a topic is chosen from those not offered in other courses or in combinations not provided by other courses.  Possible topics include compiler construction, simulation, programming languages, etc.  May be taken more than once for credit.  Prerequisite:  consent of the instructor. Offered as needed CREDIT:  THREE TO FOUR SEMESTER HOURS.

CSC 489:  READING AND RESEARCH.  A research project in Computer Science.  May be taken more than once for credit. Prerequisite: consent of the instructor and the Department Chair. Offered as needed. CREDIT:  ONE TO THREE SEMESTER HOURS.

CSC 491/492: SENIOR SEMINAR.  Students will select topic for senior research culminating with senior paper and project defense.  Both semesters required of all senior majors. Offered every fall/spring. Prerequisite: Senior standing and successful completion of the English Writing Proficiency Examination. CREDIT: ONE SEMESTER HOUR EACH.