Results 1 - 10 of 77 Courses PRINT ALL 77 COURSES

Computer Science
Department of Computer Science, College of Arts and Science

KEY TO COURSE
DESCRIPTIONS
All Courses



Results 1 - 10 of 77 Courses

Computer Science >

CMPT 100.3
Introduction to Computing
1/2(3L-1.5T)
Prerequisite(s): Mathematics A30 or B30 or C30 (or, under the old mathematics curriculum, Algebra 30 or Geometry-Trigonometry 30 or Mathematics 30).

A survey of major computer science areas, combining a breadth of topics with depth via specific examples within each topic. Topics include: history of computing, computer applications, analysis and design, high level programming, computer software, computer hardware, artificial intelligence, and the social impact of computers.

Note: Students wishing to major in computer science are advised to take either CMPT 111 or 112. Students majoring in computer science may not use CMPT 100 as a course in their major, but may count it as a junior elective as long as CMPT 100 is taken before CMPT 115. Students may not take CMPT 100 for credit concurrent with or following CMPT 115.

CMPT 101.3
Introduction to Programming
2(3L-2P-1T)
Prerequisite(s): CMPT 100 or equivalent.

Introduces the student to programming. Includes algorithm development, programming in a high-level language and algorithm analysis. Other fundamental concepts of computer science, such as recursion, file processing, and data structures will be discussed. Students will also be introduced to a variety of software packages.

Note: Cannot be taken for credit by students intending to major in computer science.

CMPT 111.3
Computer Programming and Algorithmic Analysis
1/2(3L-2P-1T)
Prerequisite(s): Mathematics B30 (or, under the old mathematics curriculum, Algebra 30 and Geometry-Trigonometry 30).

Introduces some of the basic concepts of computer science through the study of the fundamentals of algorithms, traditional elementary programming and algorithm analysis.

Note: Designed for students with little or no experience with computers who want to be introduced to the fundamental concepts of computer science. Students may not receive credit for more than one of CMPT 111, 112, 116 or 122.

CMPT 112.3
Design and Analysis of Computer Programs
1(3L-2P-1T)
Prerequisite(s): Mathematics B30 (or, under the old mathematics curriculum, Algebra 30 and Geometry-Trigonometry 30).

Introduces some of the basic concepts of computer science by reviewing fundamentals of algorithms and traditional elementary programming and studying algorithm analysis, computing machines and simulation.

Note: Designed for students with experience in using a high level structured or functional programming language such as Pascal. Students without such a background who are considering registering for the course should consult with the department or register for CMPT 111. Students may not receive credit for more than one of CMPT 111, 112 and 116 (122).

CMPT 115.3
Principles of Computer Science
2(3L-1.5T)
Prerequisite(s): CMPT 111 or 112.

Introduces more of the basic concepts of computer science through a study of information systems, artificial intelligence, languages and grammars, numerical analysis and computability.

Note: Students with credit for CMPT 117 or 123 may not take this course for credit.

CMPT 116.3
Computing I
1(3L-1.5T)
Prerequisite(s): Mathematics B30. Restricted to students in Physics and Engineering.

Gives the fundamentals of programming, including functions, procedures and arrays. It introduces object-oriented programming and GUI components. Also some basic numerical methods and engineering applications are presented.

Note: Students who have credit for this course may not receive credit for CMPT 111 or 112.

CMPT 117.3
Computing II
2(3L-1.5T)
Prerequisite(s): CMPT 116. Restricted to students in Physics and Engineering.

Continues the development of programming skills started in CMPT 116, with an emphasis on object-oriented programming. Data structures for the storage and efficient retrieval of information will be studied and analyzed, in particular stacks, queues, linked lists and simple binary trees. Examples and exercises will be drawn from engineering applications and numerical methods.

Note: Students who have credit for CMPT 123 may not take this course for credit.

CMPT 215.3
Introduction to Computer Organization and Architecture (Formerly 230)
1(3L-1.5T)
Prerequisite(s): CMPT 115 or 123, and a first-year calculus course.

An introduction to the hardware and software structure of contemporary computer systems. Topics include internal number representation, assembly and machine languages, input-output devices and their management, basic CPU operation, memory systems, computer organization, computer architecture, systems software, and data communication.

Note: A student cannot receive credit for both CMPT 212 and CMPT 215. Students seeking a computer science degree should take CMPT 215.

CMPT 220.3
Introduction to Digital Systems Design
2 (3L-1.5T)
Prerequisite(s): CMPT 215. CMPT 260 is recommended.

The following aspects of digital systems design will be discussed: binary and multiple-valued logic algebras, combinational logic design and minimization techniques, design of arithmetic circuits, implementation of digital systems using random and array structures, sequential logic design, finite-state machines, register transfer machines, and simple control unit design.

Note: Students with credit for E E 310 or E P 321 may not take this course for credit. E E 310 or E P 321 can be used to meet the requirement for CMPT 220.

CMPT 250.6
Analysis of Data and Language Structures
1&2(3L-1.5T)
Prerequisite(s): One of CMPT 115, 117, or 123, and a first-year calculus course.

A continuation of CMPT 115 or 123. Further language and data structure as well as object oriented programming and design. Algorithm analysis techniques are used to compare algorithms. The topics include trees, graphs, referencing environments, storage management, sorting and searching, file structures.


  Results 1 - 10 of 77 Courses   More Listings  >>