An introduction to problem solving through computer programming. Students learn how to read, modify, design, debug, and test algorithms that solve problems. Programming concepts include control structures, data structures, abstraction, recursion, modularity, and object-oriented design. Students explore these concepts in the context of interactive programs involving graphics and user interfaces using the Python programming language. Students are required to attend an additional two-hour laboratory section each week. Required for students who wish to major or minor in computer science or elect more advanced courses in the field.
Max Enrollment: 30
Prerequisites: Fulfillment of the basic skills component of the Quantitative Reasoning requirement. No prior background with computers is expected.
Instructor: Davis, Freire, Lerner, Singh, Wood
Distribution Requirements: MM - Mathematical Modeling and Problem Solving
Typical Periods Offered: Spring; Fall
Semesters Offered this Academic Year: Fall; Spring
Notes: Does not fulfill the laboratory requirement.