Download Comp 150 – Computer Programming I – Fall 2016 M 08/22/16

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
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