Class 1: What this course is about

Download Report

Transcript Class 1: What this course is about

Class 1: What this
course is about
Assignment



Read: Chapter 1
Do: Chapter 1 ‘workbook’ pages not finished in class
You should know:







How to use the command line
How to create and save a file
if … else
while
Role of indenting
What is a function (e.g., print(), input())
What is a parameter
In a nutshell (Thread 1)

This course is about writing computer programs
that solve problems
First step: ‘grok’ the problem. (Look up the meaning
and origin of ‘grok’.)
 Second step: write the program
 Third step: make sure the program correctly solves
the problem

In a nutshell (Thread 2)

This course is about some of the high points on
the terrain of computing. For example:
What is computing?
 How does the Internet work?
 How do hardware and software work together?
 … and more

What is an algorithm?



An algorithm is an unambiguous, step-by-step
procedure for solving a problem
A recipe is an example of an algorithm
An algorithm provides the design for a
computer program
What is a computer language?




A computer language is a way of writing down
algorithms
‘High level’ languages are readable, like natural
human languages
Computer languages are precise enough to be
executed by (unthinking) machines
All computer languages are fundamentally
equivalent in their expressive power
What is a program?



A program is a set of instructions written in a
computer language
A program implements an algorithm
A program written in a high-level language may
be translated into a low level language (the
natural language of a computer)
What is a computer?



A computer is a machine which executes
programs (unlike a lawn mower)
A computer can execute any program (unlike a
CD-player)
Since computers are Universal Machines, they
are all fundamentally equivalent in computing
power
How do you write a program?


A computer can execute programs that are tools for
creating programs
The programmer’s everyday tools might include:





editor
compiler
debugger
A suite of such tools is called an integrated
development environment (IDE)
We are using the Python language and IDLE IDE
The editor




An editor is used to write programs
Programs are written in plain text
The file containing the program in a high-level
language is called the source file
A Python source file usually has the extension
‘.py’
The interpreter



An interpreter translates from a high-level
language to the computer’s language (instruction
set)
Interpreters usually translate and execute code
line by line
A source file can not be interpreted and
executed unless it is syntactically (grammatically)
correct
The devlopment environment



We will be working in the Python integrated
development environment called IDLE
IDLE contains an interactive environment in
which you can write and execute instructions
line by line
IDLE also contains an editor to write and store
programs and a debugger to help correct
programs
The debugger



A debugger allows you to ‘step through’ the
program, viewing the changing values
A debugger aids in finding and correcting
logical errors.
(The sentence ‘Colorless green ideas sleep
furiously’ is grammatically correct, but what
does it mean? Look in up on the Web.)
Panic abatement advice

Expect to spend lots of time


Programmer wisdom: it always takes longer than you
think
Expect things to go wrong
Murphy’s law of computers: anything that can’t go
wrong, will
 Don’t panic: every bug has a fix

Tips for success




Start every assignment early
Don’t fall behind
Ask if you don’t know
Do your own work
Getting help




Use the online help system
Every TA and instructor has office hours
There are tutors available (check the course
web site)
My contact info:
Barry Cohen
 3503 GITC
 [email protected]
 Tues, Thurs 2:30-3:30

Grading








Homework (6)
15%
Projects (2)
15%
Midterm 1
20%
Midterm 2
20%
Final
25%
Participation
5%
All sections have same work and tests
Course is graded on a curve
Attendance


Attendance is mandatory (you are asked to sign
in). Five absences will lead to withdrawal
Arriving late or leaving early counts for ½ of an
absence
Homework





HW assignments are approximately bi-weekly
HWs are handed in at the start of class
No late HWs will be accepted
Every HW must be in hard copy – code and
output, neatly printed and stapled
Every HW must have student name and SS#,
date, HW # section #
Honesty



Cheating on an exam will result in failing the
course
You may discuss HW problems with each other
You may not take credit for something you did
not do
Logging On

Linux/Unix, Mac or Windows
UCID
 Password


Password problem?

Unattended Password Reset (UPR)

http://mypassword.njit.edu
Introduction To Python

What is Python?
Very high level language (HLL)
 Scripting language


Why use Python?
Powerful and fast
 Runs everywhere
 Easy to learn
 Easy to read
 Encourages good programming practices

The Python Interpreter

Linux/Unix
Open a terminal window
 Type ‘python’ or ‘idle3’ at a command prompt
 Or double click icon


Windows
Go to Start > Programs > Python3 > Idle
 Or double click icon


Mac

Open from terminal or double click icon
Python As A Calculator



Python can perform all basic arithmetic
operations
How many minutes in a year?
How many seconds since the universe began 13
billion years ago?
The IDLE environment
You can use IDLE to assign values to an identifier (i.e., a name)
>>> x = 5
 An IDLE session has a memory
>>> x
5
>>> y = x
>>> y
5
 You can the change the value assigned to an identifier
>>> x = 'five'
>>> x
'five'

Your First Python Program


Type print(‘Hello, World!’) and
then press the enter key
The Python interpreter prints ‘Hello, World!’ on
the screen
More about Hello, World

print() is a function



A function is a named block of code
A function hides how it works from the outside world
‘Hello, World’ is a parameter





A parameter is ‘handed’ to a function
A parameter is in parens, after the function name
Try print () and (‘‘)
Try print (‘hello‘, ‘and goodbye‘)
Try print
Our textbook



Head First Programming
This book incorporates workbook material that
we will do in class
Let’s go through Chapter 1