CS99 Lecture 1 - Week of 8/28/2000 CS99 Overview - Details Course label: COM S 99 Course name: Fundamental Programming Concepts Semesters offered: Fall, Summer Credits: 2 Grades: S/U Website: http://courses.cs.cornell.edu/cs99/2000fa/ Newsgroup: cornell.class.cs99 Synopsis - CS99 as gentle introduction - Precursor to CS100 Alternatives - http://www.cs.cornell.edu/ugrad/FirstCourse.html - ABEN has other courses, too Instructors - David I. Schwartz (CS) - Kim Hamilton (CAM) Material - Maple -- a bit delayed on installation - Student Version will become available at bookstore - Draft of DIS's book - 1st Edition will be available at bookstore Requirements - Lecture once per week - Lab once per week (Upson B7) - Programming Assignments - Two Prelims Grading - Programming Assignments: 50% - Labs, Participation: 10% - Prelim 1: 10% - Prelim 2: 20% What to do now - Read http://courses.cs.cornell.edu/cs99/2000fa/overview.htm! - Review the descriptions of CS99, and alternative courses. - Read Chapters 1 and 2. Refer to the online Syllabus to obtain the files. Programming - Problems & Tools - Problems -> need to solve "things" - Tools -> what we use to solve those "things" Problem & Tool Types - Physical -> laboratory models - Abstract -> mathematical models Computers - Tool for solving problems - Both physical (hardware) and abstract (software) Programming - "Automating problem solving" - Software instructs computer on "what to do" - Process Start with problem Determine a solution procedure -> called algorithm Break the procedure down into smaller and small steps Remember that computers are "stupid" Need very explicit instructions Programming Assignment 1 - Shoe-lace example: Due next week. Explain to a robot how to tie shoe-laces. The robot can read English text, but cannot understand graphical images. You will need to be extremely explicit in your instructions. You must type your instruction set in a clear fashion.