ClassID |
Name |
Description |
Credits |

COMP 1050L | Digital Communications Systems | Prerequisite: C or better in MATH 1100. Preference is for students to take this course simultaneously with the Computer Networking course. One lecture and one lab per week. Introduction to local area and wide area networks. Course provides basic understanding of network concepts and router programming. | 3 |

COMP 1051L | Computer Networking Technology | Prerequisite: COMP 1050L. Students may take this course simultaneously with the Computer Networking course. One lecture and one lab per week. Development of competence in designing and implementing enterprise-wide campus network using switches and routers. Course provides advanced study of local area and wide area networks. | 3 |

COMP 1070 | Programming for Science Majors | An introductory course to algorithms and top-down problem solving. The course will provide an introduction to the C programming language including functions, arrays, pointers, and standard libraries; basic skills for using UNIX and Windows operating system environments will be emphasized. file system structures and access control, basic user commands, text editing and Internet utilities are covered. | 3 |

COMP 1400 | Computer Program | 3 | |

COMP 1510 | Programming I: Java | Prerequisite: C or better in COMP 1070 or permission of department; Co-requisite: MATH 1100 or equivalent. An introduction to computer programming in Java, with an emphasis on algorithm development and problem solving. Development of Java applications and applets from specifications; control structures; classes and methods; data types and data abstraction; object-oriented programming and design are included. | 3 |

COMP 1520 | Programming II: C++ | Prerequisite: C or better in COMP 1070 or permission of department; Co-requisite: MATH 1100 or equivalent. An introduction of object-oriented programming and design in C++ with an emphasis on algorithm development and problem solving. Topics include design and implementation of classes, fundamental algorithms using arrays and vectors, file manipulation, dynamic memory management, inheritance, recursion, and simple GUI programming. | 3 |

COMP 1525 | Object Oriented Program | Prerequisite: C or better in COMP 1520. An introduction to techniques and concepts in object-oriented programming such as function templates, class templates, stream input/output, exception handling, file processing, and inheritance. Elementary data structures (e.g., linked lists, stacks, and queues) and basic searching and sorting algorithms will be introduced. | 3 |

COMP 2200 | Logic for the Mathematical Sciences | Prerequisite: C or better in MATH 1100 or 1410. An introduction to modern symbolic logic emphasizing topics relevant to computer scientists and mathematicians. Topics in propositional calculus and predicate calculus will be augmented by topics chosen from set theory, recursive functions, and computational complexity. Topics in propositional calculus will be chosen from: completeness, circuits and Boolean algebra, and the satisfability problem. Topics in predicate calculus will be chosen from: deduction systems, compactness, incompleteness, and finite models. | 3 |

COMP 2300 | Discrete Structures for Computation | Prerequisite: C or better in either MATH 2010 or COMP 2200. An introduction to combination enumeration (including the inclusion-exclusion principle, multinomial coefficients, recurrence relations, and generating functions), graph theory (including graph coloring, graph matching, tours and networks), and basic string recognition methods (including finite state machines, pushdown automata, and Turing machines). | 3 |

COMP 2610 | Introduction to Digital Design | Prerequisites: C or better in COMP 2200. An introduction to computer architecture and implementation. Topics include binary number systems, truth functions, boolean algebra, canonical forms, minimization of combinatorial logic circuits and sequential circuits design, flip-flops and adders, and storage mechanisms and their organization. | 3 |

COMP 2615 | Introduction to Computer & Arch | 3 | |

COMP 2620 | Computer Hardware and Organization | Prerequisite: C or better in COMP 2610. A continuation of COMP 2610. Study of computer hardware and architecture. Treatment of sequential and combinatorial circuits including flip-flops, multiplexers, decoders, adders, registers, counters. Design of functional components of a computer including memory. ALU, control unit, and busses. Coding methods, arithmetic units, instruction execution, and information transfer are emphasized. The tradeoffs of alternative architectural features such as word size, instruction sets, and addressing modes are discussed. | 3 |

COMP 2810 | Introduction to Data Structures and Algorithm Analysis | Prerequisite: C or better in COMP 1520. An introduction to abstract data structures and their various implementations. Includes linked lists, stacks, queues, trees, and general graphs. Algorithms which use these data structures are described and analyzed, including recursive and non-recursive searching and sorting methods. | 3 |

COMP 3300 | Introduction to Database Systems. | Prerequisite: C or better in COMP 2200 and 2810. General principles and methods for database systems. The internal, conceptual, and external levels of database systems as reflected in the relational, network, and hierarchical database models. Principles and methods for database design theory. Query languages. file organizations appropriate for database systems. | 3 |

COMP 3710 | Introduction to Computer Graphics | Prerequisites: C or better in COMP 2810 and MATH 2010. An introduction to raster graphics using the C programming language. Two and three dimensional rendering issues are studied, including scaling, rotation, translation, clipping, projection and other transformations and representations of 3D objects. Emphasis is on implementing a graphics package using efficient algorithms. | 3 |

COMP 3810 | Advanced Data Structures and Algorithm Analysis | Prerequisite: C or better in COMP 2810. A study of advanced algorithms and data structures that are not covered in COMP 2810. This course gives an overview of the algorithmic components that commonly occur in many important applications. It emphasizes selection/design of algorithms that are appropriate for particular applications, and also emphasizes in-depth analysis of time and space efficiency. | 3 |

COMP 3910 | Undergraduate Honors Seminar | Prerequisite: Junior standing and permission of department required. A guided research seminar intended for computer science majors. Students investigate selected topics in computer science and participate in ongoing research. Includes individual or team projects and oral presentations. Students must devote three hours of work per week for each semester credit hour and must produce a written report on their project each semester. Topics vary. May be repeated for credit. | 1 to 3 |

COMP 4400 | Microelectronics Laboratory | Prerequisite: Permission of the instructor. A study on the implementation of binary operations by means of electronic circuits. Operations of logic gates, design of logical networks, microprocessor architecture, memory devices and interfacing techniques will be covered. Students will use common integrated circuit devices for selected applications. | 3 |

COMP 4460 | Applications Programming I | Prerequisite: C or better in MATH 3410 and 4410. Computer applications of numerical algorithms for solving applied linear algebra problems and optimization problems that arise in various sciences and engineering. Programming in FORTRAN and MATLAB with emphasis on visualization of the numerical solutions. Prior knowledge of FORTRAN and MATLAB are desirable. | 3 |

COMP 4730 | Organization of Programming Languages | Prerequisite: C or better in COMP 2810. An introduction to the formal study of programming language concepts including syntax and semantic issues. Grammars, data types and control structures are examined. Several languages are analyzed and compared, including representative languages from procedural, functional, object oriented, logic programming and other paradigms. | 3 |

COMP 4820 | Raster Graphics | Prerequisite: C or better in COMP 3710, COMP 3810, and MATH 4410. A study of the hardware, software and algorithms for raster devices such as video displays; frame buffers, hidden-line/surface processing, anti-rastering techniques, curved surfaces generation display, lighting models, modeling of shadow, natural textures phenomena; shading and color models. Discussion of problems of current interest. | 3 |

COMP 4830 | Introduction to Computational Geometry | Prerequisite: C or better in COMP 3810, MATH 2020 and MATH 4410. A study of computer-based representation, analysis, synthesis and computer-controlled manufacture of two- and three-dimensional shapes. Topics to include spline functions, parametric cubic spline curves, Bezier curves and B-Spline curves, curve and net faring, intrinsic affine invariants of parametric curves in affiine hyperspace. | 3 |

COMP 4840 | Digital Image Processing and Computer Vision | Prerequisite: C or better in COMP 3810, MATH 2020 and MATH 4410. Study of the relationship of image processing and computer vision to 2-D signal processing, pattern recognition, computer graphics and artificial intelligence, geometrical model for imaging; fundamentals of image grey-level modeling and early processing | 3 |

COMP 4850 | Introduction to Operating Systems | Prerequisites: C or better in COMP 2610, 2810, and 2620 (2620 may be taken as a co-requisite). An investigation of the efficient management of computer resources. Process management, storage management, security, distributed systems, are all examined. Studies of specific operating systems, including Unix, Windows, and DOS, among others, are included. | 3 |

COMP 4900 | Independent Study | Prerequisite: permission of department. This course provides students an opportunity to study areas of computer science not taught in other courses. A faculty mentor directs the study and assesses the studentâ€™s knowledge through oral and written reports. Repeatable for credit. Departmental approval is required for registration. | 1 to 3 |

COMP 4910 | Special Topics in Computer Science | Content and prerequisites vary from semester to semester, interested students must consult the instructor or department chairperson prior to enrolling. Possible topics include computer graphics, compiler design, simulation, network programming/distributed processing, data base management systems. May be repeated for credit. | 3 |

COMP 4920 | The Senior Seminar in Computer Science | Prerequisite: Senior classification. COMP 2620 and 3810. An advanced study of software engineering, with an introduction to selected topics from artificial intelligence, compiler and language theory, parallel algorithms, object oriented programming, theory of computability, and other current trends in computer science. Students will design, implement, and document a team oriented project using C or some other high level, modern programming language. May be repeated for a maximum of 3 credit hours. | 1 to 3 |

COMP 4940 | Cooperative Education | Prerequisite: permission of department. Through cooperative arrangements between the University and an employer the student may receive credit for on-the-job instruction which contributes to the studentâ€™s education and employability as a computer scientist. Repeatable for a maximum of 6 hours credit. Department approval is required for registration. May not be used to satisfy a computer science elective requirement. | 1 to 3 |

North Carolina Central University

(p) 919-530-6100

1801 Fayetteville St.

Durham, NC 27707

Quick Links | |

Campus Directory | Libraries |

Employment | Emergency Information |

Campus Map | Policies |

Ticket Office | Administration |

Bookstore | Transcripts |

Popular Phone Numbers | |

University Operator | 919-530-6100 |

Academic Affairs | 919-530-6230 |

Graduate Studies | 919-530-7396 |

Human Resources | 919-530-6334 |

Registrar's Office | 919-530-6654 |

©
2015

North Carolina Central University

1801 Fayetteville St., Durham, NC 27707