welcome to csca20 an introduction to computer programming anna bretscher

16
Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Upload: melissa-stokes

Post on 22-Dec-2015

232 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Welcome to CSCA20

An Introduction to Computer Programming

Anna Bretscher

Page 2: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Why Study Computer Science?

• Computers provide tools to simplify processes

• Computers allow for analysis that is otherwise impossible

• Computer science can be applied to many problems in the sciences, business, arts, humanities…

• Computers don’t always do what we think they are doing, better to understand when this happens!

Page 3: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Course Goals

• To learn most Python instructions.

• To be able to write programs that solve

scientific (or other) problems.

• To understand what computer scientists do.

• To acquire an appreciation of how computer

science applies to other areas of research.

Page 4: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

CSCA20 - Content• Intended for students with no

programming experience.

• Introduction to

• algorithms

• programming using Python

• Data analysis and plotting

• Database design

Page 5: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

CSCA20 - Course WorkTextbook – ebook or hardcopy

“Practical Programming 2nd Edition” by Campbell, Gries, Lockwood, Montojoand Wilson

http://pragprog.com/book/gwpy2/practical-programming

Labs (10%)2 hour labs every week, starting in week 2.

Assignments (40%)4 assignments - 10% each

Page 6: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

CSCA20 - TestsQuizzes (15%)

Quizzes in weeks 4, 7 and 11 during lab time.

Think of quizzes as practice for the final.

Final (35%)

You need to score at least 40% to pass the

Course.

Page 7: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Labs

• 2 hour labs every week starting in week

2.

• You earn 1% per lab attended up to 10%.

• This means you may miss one lab.

• These are the “tutorials” on ROSI

• Labs are your new best friend. This is

where you will learn the most!

Page 8: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Assignments

• Posted on the website.

• Submitted electronically.

• First assignment very short and easy

– an easy way to earn 10%.

• 2nd, 3rd and 4th assignments

progressively more challenging.

Page 9: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Where do I get HELP!!Labs

Ask your TA questions. Your labs are also like office hours!!

Office Hours M 11:00 - 11:45, W 11:30 – 1:00, F 12:10 - 1:00Come visit me, I want to get to know you.

Online Tutorialhttp://interactivepython.org/courselib/static/thinkcspy/index.html

Email Me •[email protected]•Include a relevant subject (e.g., CSCA20 - A1 question 2).•Sign your name.

Page 10: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Week 1 - To Do List

Read the course information sheet and check out the website.

Order/download the text and read chapters 1 and 2

Install Python and Wing 101 (if working at home)

See the “Resource” page on the website

Page 11: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Computer Science

Is about problem solving and writing algorithms.

ALGORITHM (WEBSTER’S). A step-by-step procedure for solving

a problem or accomplishing some end especially by a computer

Page 12: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Lets Practice AlgorithmsGive the smiley face instructions to get to the star. Use Give the smiley face instructions to get to the star. Use Forward, Right, Left.Forward, Right, Left.

F x 2, RF x 2, RF x 2, LF x 2, LF x 7, RF x 7, RF x 2, R F x 2, R F, LF, LF, RF, RF, LF, LF x 2, RF x 2, RF x 3, RF x 3, RFF

Page 13: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Let Practice Algorithms – Take 2

F x 9, RF x 9, RF x 9, RF x 9, RF x 9, RF x 9, RF x 7, RF x 7, RF x 7, RF x 7, RF x 5, RF x 5, RF x 5, RF x 5, RF x 3, RF x 3, RF x 3, RF x 3, RFF

Page 14: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Let Practice Algorithms – Take 2

F x 9, RF x 9, RF x 9, RF x 9, RF x 9, RF x 9, RF x 7, RF x 7, RF x 7, RF x 7, RF x 5, RF x 5, RF x 5, RF x 5, RF x 3, RF x 3, RF x 3, RF x 3, RFF

F x 9, RF x 9, R

stepssteps 9 9(F x (F x stepssteps, R) x 2, R) x 2stepssteps 7 7(F x (F x stepssteps, R) x 2, R) x 2stepssteps 5 5(F x (F x stepssteps, R) x 2, R) x 2stepssteps 3 3(F x (F x stepssteps, R) x 2, R) x 2

FF

Page 15: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Algorithms – Take 2

F x 9, RF x 9, Rstepssteps 9 9

(F x (F x stepssteps, R) x 2, R) x 2stepssteps 7 7(F x (F x stepssteps, R) x 2, R) x 2stepssteps 5 5(F x (F x stepssteps, R) x 2, R) x 2stepssteps 3 3(F x (F x stepssteps, R) x 2, R) x 2

FF

F x 9, R F x 9, R stepssteps 9 9

while while stepssteps > 2 repeat: > 2 repeat:(F x (F x stepssteps, R) x 2, R) x 2stepssteps stepssteps - 2 - 2

FF

F x 9, RF x 9, Rstepssteps 9 9

(F x (F x stepssteps, R) x 2, R) x 2stepssteps stepssteps - 2 - 2(F x (F x stepssteps, R) x 2, R) x 2stepssteps stepssteps - 2 - 2(F x (F x stepssteps, R) x 2, R) x 2stepssteps stepssteps - 2 - 2(F x (F x stepssteps, R) x 2, R) x 2

FF

Page 16: Welcome to CSCA20 An Introduction to Computer Programming Anna Bretscher

Python

• Python is the language we will use to write our algorithms.

• We use Wing 101: a free environment and editor for coding in Python.