Lecture 1
Lecture 1
Programming
Course instructor
Ayesha Kanwal
Introduction to
Programming Fundamentals
Introduction to Python 3
Outline
• Introduction
• About the course
• Course Learning Objectives (CLOs)
• Assessment
• Importance and applications
• Fundamentals of computer programming
• Introduction to python
3
Introduction
COMPUTER PROGRAMMING
1. COMPUTER:
A computer is an electronic device, operating under the
control of instructions stored in its own memory
Accepts Produces
data Processing information
(input) (output)
4
Introduction
2. Programming
• The art of telling a computer how to perform complex tasks
• The art of writing computer programs (software)
• Program is a set of instructions asking the computer to
perform specified tasks
5
Introduction
2. Programming
6
About the course
• Fundamentals of designing, writing, testing, and maintaining
computer programs
• Using Python 3 programming language
• For highly motivated students with no prior experience
in programming
7
Course Learning Objectives (CLOs)
• Describe the fundamental programming constructs and
articulate how they are used to develop computer programs
• Develop programs to implement computer-based solutions of
well specified problems
• Distinguish the advantages and limitations resulting from the
use of different language constructs that embody similar
programming concepts
8
Textbook
• Python Basics: A Practical Introduction to Python 3
by David Amos, Fletcher Heisler, and Joanna Jablonski
Fourth Edition
9
Reference Books / Resources
• Introduction to Computation and Programming Using Python,
John V. Guttag, The MIT Press
• Practical Programming, An Introduction to Computer Science
Using Python 3, 2nd Edition, Paul Gries, Jennifer Campbell,
Jason Montojo
• http://www.py4inf.com/
• https://www.tutorialspoint.com/python/index.htm
10
• Theory: 75%
– Assignments 10%
– Quizzes 10%
– Mid term exam 30%
– End Semester Exam 50%
• Labs: 25%
– Lab Assignments 70%
– Project/ exams 30%
• Quiz Policy
– 4‐6 quizzes in whole semester
– Announced \ unannounced
• Assignment Policy
– 3‐4 Assignments
– LMS/lecture will be medium of Announcements and discussion
11
Plagiarism
• Assignments and project should be your own and not copied
from internet or from colleagues
• Collaboration and discussions are encouraged
• Always acknowledge help taken from other sources
• Plagiarized work will be graded zero and repeat offences will
be reported to the Dean for appropriate action
12
Importance and applications
• Fundamental basis for all of your courses that
involve programming throughout this
degree program
• automate, collect, manage, calculate, analyze the processing
of data and information accurately
• create software and applications that help computer and
mobile users in daily life
13
Fundamentals of computer programming
school work home
control machines in
manufacturing facilities
• Microsoft Word is a word processing program that allows you to create, edit, and print documents with your computer.
• Adobe Photoshop is an image editing program that allows you to work with graphic images, such as photos taken with your
digital camera.
1
•
• Programs are commonly referred to as software.
• Software is essential to a computer because it controls
everything the computer does.
• All of the software that we use to make our computers useful
is created by individuals working as programmers or software
developers
16
Hardware and Software
• The physical devices that a computer is made of are referred to as the
computer’s hardware. The programs that run on a computer are
referred to as software
17
• The CPU
When a computer is performing the tasks that a program tells
it to do, we say that the computer is running or executing the
program. The central processing unit, or CPU, is the part
of a computer that actually runs programs.
18
How Computers Store Data
CONCEPT: All data that is stored in a computer is converted to
sequences of 0s and 1s.
19
20
21
22
23
High-Level Languages
• In the 1950s, a new generation of programming languages
known as high-level languages began to appear.
• A high-level language allows you to create powerful and
complex programs without knowing how the CPU works, and
without writing large numbers of low-level instructions.
24
Python - The Programming Language
• A general-purpose interpreted, interactive, object-oriented,
and high-level programming language
• Created by Guido van Rossum during 1985- 1990
• Named after Monty Python
• Used by Google from the beginning
• The most popular language in 2021 as per an IEEE survey
along with old classics Java, C, and C++
• Instagram, YouTube, Reddit, Spotify, to name just a few of
the professional products built using Python
25
IEEE
Spectrum’s
Ranking of
Programming
Languages in
2021
26
Why Python?
• Very easy, simple, natural, and readable
– Python 3 has 33 keywords, and Python 2 has 31. By contrast, C++ has 62,
Java has 53, and Visual Basic has more than 120
27
Reading Material
• Think Python
• How to Think Like a Computer Scientist
Chapter 1
• Lecture notes
28
Acknowledgement!
29