## General Information

Programming and problem solving using MATLAB. Emphasizes the systematic development of algorithms and programs. Topics include iteration, functions, arrays, recursion, object-oriented programming, and MATLAB graphics. Assignments are designed to build an appreciation for complexity, dimension, fuzzy data, inexact arithmetic, randomness, simulation, and the role of approximation. Not recommended for anyone interested in learning introductory programming.

## Prerequisites

Forbidden Overlap: Due to a partial overlap in content, students will receive 6 credits instead of 8 if they take CS 1112 and CS 1110. In addition, students will receive credit for only one course in the following group: CS 1112, CS 1114, CS 1115, and BEE 1510.

Corequisite: MATH 1110, MATH 1910, or equivalent. Assumes student is comfortable with mathematics (at level of one semester of calculus) but has no prior programming experience. Co-meets with CS 1142.

## Topics Covered

Outcome 1: Be fluent in the use of procedural statements—assignments, conditional statements, loops, function calls—and arrays. Be able to design, code, and test small MATLAB programs that meet requirements expressed in English. This includes a basic understanding of top-down design.

Outcome 2: Understand the concepts of object-oriented programming as used in MATLAB: classes, subclasses, inheritance, and overriding.

Outcome 3: Have knowledge of basic sorting and searching algorithms.

Outcome 4: Have a working familiarity with graphics tools in MATLAB.

## Workload

Nominal - similar to CS1110, but in Matlab. Matlab syntax can be a pain if you already know some programming (array indexing starts from 1!!), but the course is between okay and easy.

## General Advice

- Would recommend taking this if you already know some Python or any other PL, but didn’t take AP/couldn’t pass CASE for CS1110/want to start from base. The course is pretty straightforward, and Matlab plots are cool and easy.
- Go with CS1110 if you don’t know any programming, as it helps better than this class.
- CS1112 is mostly “computational engineering” (not computer engineering), and can be useful if you like Scientific Computing/Applied Math.

## Testimonials

## Past Offerings

Semester | Time | Professor | Median Grade | Course Page |
---|---|---|---|---|

Fall 2014 | TR 9:05-9:55 AM, 11:15-12:05 AM | K.Y. Daisy Fan | B+ | http://www.cs.cornell.edu/Courses/cs1112/2014fa/ |