Discussion: 1 hour
Prerequisite: Two years of high school algebra
Grading: Letter; programming projects (35%), two midterms (20% each), final exam (25%)
Introduction to principles of computing. Methods and algorithms for solving problems by use of a digital computer. Not intended for students in physical sciences, engineering or mathematics. Not open for credit to students who have completed course 30, 35, Engineering 5 or former course 30H.
The class should teach students to write programs in the Python programming language, including the features of Python described below. After completing the class, students should be well-prepared for course 30 and for independent programming projects.
Expanded Course Description:
M. Dawson, Python Programming for the Absolute Beginner, Thomson Course Technology PTR, Second Edition, 2005.
J. M. Zelle, Python Programming: An Introduction to Computer Science, Franklin Beedle & Associates, Book & CD-Rom Edition, 2003.
Main Python web site: http://www.python.org
Python tutorials: http://heather.cs.ucdavis.edu/~matloff/python.html
On-line Python textbooks (also available for free download):
A Byte of Python (by Swaroop C H) and Non-Programmers Tutorial For Python (by Josh Cogliati)
Six or more programming assignments with some requiring writing several programs. Programs require students to apply the concepts covered in the lecture. For example, the following list describes the key topics that might be covered in a typical sequence of assignments:
ABET Category Content:
Engineering Science: 0 unit
Engineering Design: 0 unit
Instructor: N. Amenta, B. Ludaescher, M. Gertz
Prepared By: N. Amenta (February 2007)
No significant overlap with other courses