CMSC 12600
Honors Introduction to Computer Programming II (Honors C++ Programming)Prerequisites: CMSC 12500 or consent of instructor
Catalog Description: This course teaches a substantial subset of C++. Since the students have been selected based on mathematical sophistication, much of the programming that the students do is related to mathematical concepts. In winter, 2002, the course dealt, in part, with the following. We looked at integer arithmetic, including making extended precision easy and efficient. This was then used in building tools for arithmetic on rationals. The integers mod a number were used as the subject of a project aimed at making it straight forward to program in modulo arithmetic; the students found the coding of division (when possible) a challenge. Several projects on adaptive integration were addressed in the course: integrals of real valued functions in the plane, computation of arc lengths of parametrically defined curves, and contour integration of complex-valued functions of a complex variable. Basic notions of plane geometry were used in building a shape hierarchy. The students implemented several basic processes of matrix algebra, on a matrix hierarchy that included types such as diagonal, tridiagonal, general sparse, and full matrices. They learned and implemented a QR decomposition that can be used for solving linear equations or discovering that a square matrix is singular. Throughout, the notions of class and class hierarchy design were central, and operator overloading made the programming in various mathematical models quite natural.
Instructors: StaffQuarter offered: This course is no longer offered. See CMSC 16200.
Last Verified by Sharon Salveter on 11 May, 2006.

