Computer Science with Applications 1 & 2

As computation becomes increasingly important, computational thinking and skills become a critical part of education in many fields. Computer Science with Applications 1 & 2 teaches these skills using applications from a wide variety of fields as the basis for lectures and programming assignments. Lectures cover topics in (1) programming, such as recursion, abstract data types, and processing data, (2) topics in computer science, such as machine architecture, distributed systems (client/server applications), and theory of computation, and (3) topics numerical computation, such as approximating functions and their derivatives and integrals, solving systems of linear equations, and simple Monte Carlo techniques. Robust computing techniques are emphasized throughout the courses. Students will learn practical skills, such as programming in Java, C, and Python or Matlab, along with the basic principles of computer science and numerical computation.

Prerequisites:

Placement into Math 152 or higher or permission of the instructor.

Note:

CMSC 121 will fulfill the mathematical sciences core requirement and the computing requirement for the statistics major. It can also be used as an elective for the economics major.

CMSC 121-122 will fulfill the prerequistes for CMSC 154.