Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
08/23/2016 Comp 150 – Computer Programming I – Fall 2016 M 08/22/16 Overview of Course Mechanics An Introduction to Computer Science Instructor: Brian Shelburne Office: 329-E Science Phone: x7862 E-mail: [email protected] Texts: Python Programming: An Introduction to Computer Science – 2nd Edition by John Zelle Course Website: (bookmark this!) http://www4.wittenberg.edu/academics/mathcomp/shelburne/comp150/index.html Notes, Assignments, Handouts, Course Syllabus Weekly Syllabus etc. found here Course Mechanics – See Course Syllabus Grading Three 100 point in-class tests: 300 points Pledged Programming Assignments: 400 points Lab Grade: 100 points Total 1000 points Final Exam: 200 points A : 93% A- : 90% B+ : 87% B : 83% B- : 80% etc. Programming Assignments that do not execute will not be accepted! Tests are scheduled for 90 minute lab periods on Tuesdays. Tests consist of a closed book part and an on-line open-book programming part. One-Time Test Retake Option: May re-do an in-class test as a take home. Test grade will be averaged with in-class grade or 80% whichever is smaller. One time only offer! 1 08/23/2016 Course Mechanics (cont.) Labs: Attendance is mandatory; 10 points deducted for missing a lab w/o a legitimate excuse (if contacted ahead of time) Academic Integrity: work must be your own; assistance may not be given or received; all programming assignments are pledged; zero for test or programming assignment + report made to Honor Council Class Attendance Policy: 20 point bonus if no more than 3 unexcused absences and no labs missed For each class I will hand out copies of the notes! Copies can be found on web-site if you miss class – but don’t Bring your textbook to class! Expectations are that you will have done the reading before coming to class; you are responsible for Review Questions at the end of each chapter Course Mechanics (cont.) Classroom Behavior 1. switch off cell phones – no texting in class 2. No “surfing” the internet – stay focused on the class 2. Please do not get up in the middle of class to visit the water fountain or rest room Individual Named Work Folders for assignments can be found on Q:\Computer Science\Classes\Comp150Fa16 Shelburne Use a flash drive or create H:\Comp150 folder for your work (Here’s the Small Print) Comp 150: Computer Programming I is a course in which a certain amount of material must be and will be covered. Reducing the amount of material covered is not an option. 2 08/23/2016 Course Mechanics (cont.) Your learning in this course is important to me. I invite you to talk with me about ways to ensure your full participation in this course. Please be aware that Wittenberg is committed to providing reasonable accommodations for students with documented disabilities. If you are eligible for course accommodations because of a disability, you need to register with the Academic Services Office, COMPASS Center located in Thomas Library. After you register, give me your accommodation letter from Academic Services and arrange to talk with me about your learning needs privately in a timely manner. Early identification at the start of the term is essential to ensure timely provision of services. If you have questions or would like more information about services for students with disabilities, please contact Grace Whiteley, Disability Services Coordinator/Student Success Coach, [email protected] The Structure of Comp 150 1. Basic Coding: Creating A Toolbox of Basic Python Coding Techniques (i.e. there are certain coding techniques/methods that every computer programmer should know) 2. Advanced Coding and Advanced Programming Techniques (Graphics, Structured Variables) 3A. Breadth Issues in Computer Science Binary Representation Designing and Testing Software Boolean Algebra & Digital Logic Computer Organization Efficiency and Complexity History of Computers 3B. Building Applications 3 08/23/2016 Comp 150 Course Web Site http://www4.wittenberg.edu/academics/mathcomp/shelburne/ comp150/index.html Finding the Python IDE for Python 3.3.3 Q:\Class Programs\Computer Science\Python 3.3.3\ Python 3.3.3 IDLE (GUI) Click & drag to create a desktop shortcut! .py files are Python source code files Version 2.7 vs Version 3.3 (current version is 3.5.1) IDE: Integrated Development Environment (edit & execute) To download your personal copy of Python 3.4 - see course website Interactive Python Python 3.3.3 Shell IDE “>>>” Python prompt Python evaluates Input Assigning values to variables >>> “Hello World!” ‘Hello World’ >>> x=2 >>> y=3 >>> x+y 5 >>> 4 08/23/2016 Computer Science is the study of algorithms, including Their formal and mathematical properties Their hardware realizations Their linguistic realizations Their applications N. Gibbs and A. Tucker. "A Model Curriculum for a Liberal Arts Degree in Computer Science"; CACM 29, No 3 (March 1986) Definition of Algorithm (after Al Kho-war-iz-mi a 9th century Persian mathematician) - an ordered sequence of unambiguous and well-defined instructions that performs some task and halts in finite time This will be a question on the first test The 3 gallon – 5 gallon jug problem Given a five gallon jug and a three gallon jug, can you determine a way (algorithm) to measure out exactly four gallons? Note: You cannot estimate quantities; for example filling both the 5 gallon jug and the 3 gallon jug half way to give you a total of 4 gallons is not a solution 5 Gal. 3 Gal. Link to the Solution 5 08/23/2016 A computer is an (electronic) device operating under the control of instruction stored in its own memory (stored program concept) that 1. Accepts data (input) 2. Processes the data arithmetically and logically 3. Produces output (information) from the processing and/or 4. Stores the results for future use Why Comp 150 is a great and useful liberal arts course 1. The “Gold Standard” of Computer Literacy is the ability to program a computer 2. Computer Technology Dominates our Society 3. It’s all about Problem Solving. 4. It’s Creative! You get to Build Things in Software! For Tuesday’s Lab: Read Zelle Chapter 1 6