www.kalfaoglu.com

Download Report

Transcript www.kalfaoglu.com

About the Presentations
• The presentations cover the objectives found in
the opening of each chapter.
• All chapter objectives are listed in the beginning
of each presentation.
• You may customize the presentations to fit your
class needs.
• Some figures from the chapters are included. A
complete set of images from the book can be
found on the Instructor Resources disc.
Invitation to Computer Science
5th Edition
Chapter 1
An Introduction to Computer
Science
2
Objectives
In this chapter, you will learn about:
• The definition of computer science
• Algorithms
• A brief history of computing
• Organization of the text
Invitation to Computer Science, 5th Edition
3
Introduction
• Misconceptions
– Computer science is:
• The study of computers
• The study of how to write computer programs
• The study of the uses and applications of computers
and software
Invitation to Computer Science, 5th Edition
4
The Definition of Computer Science
• Computer science is the study of algorithms,
including:
–
–
–
–
Their formal and mathematical properties
Their hardware realizations
Their linguistic realizations
Their applications
Invitation to Computer Science, 5th Edition
5
The Definition of Computer Science
(continued)
• Algorithm
– Step-by-step method for accomplishing some task
• Operations used to construct algorithms
– Sequential operations
– Conditional operations
– Iterative operations
Invitation to Computer Science, 5th Edition
6
Figure 1.1 Programming Your DVR. An Example of an Algorithm
Invitation to Computer Science, 5th Edition
7
Figure 1.2 Algorithm for Adding Two m-digit Numbers
Invitation to Computer Science, 5th Edition
8
The Definition of Computer Science
(continued)
• Why are formal algorithms so important in
computer science?
– If we can specify an algorithm to solve a problem,
then we can automate its solution
• Computing agent
– Machine, robot, person, or thing carrying out the
steps of the algorithm
Invitation to Computer Science, 5th Edition
9
Algorithms
• Algorithm
– Well-ordered collection of unambiguous and
effectively computable operations that, when
executed, produces a result and halts in a finite
amount of time
• Ambiguous statements
– Go back and do it again (Do what again?)
– Start over (From where?)
Invitation to Computer Science, 5th Edition
10
Algorithms (continued)
• Unambiguous operation
– Can be understood and carried out directly by the
computing agent without further simplification or
explanation
– Also called primitive operation
• It is not enough for an operation to be
understandable
– It must also be doable (effectively computable) by
the computing agent
Invitation to Computer Science, 5th Edition
11
Algorithms (continued)
• Algorithm
– Result must be produced after the execution of a
finite number of operations
• Infinite loop
– Runs forever
Invitation to Computer Science, 5th Edition
12
Figure 1.3a A Correct Solution to the Shampooing Problem
Invitation to Computer Science, 5th Edition
13
Figure 1.3b Another Correct Solution to the Shampooing Problem
Invitation to Computer Science, 5th Edition
14
The Importance of Algorithmic
Problem Solving
• “Computer revolution” of the twentieth and twentyfirst centuries
– Has enabled us to implement algorithms that
mechanize and automate the drudgery of repetitive
mental tasks
Invitation to Computer Science, 5th Edition
15
A Brief History of Computing
• The Early Period: Up to 1940
– John Napier invented logarithms as a way to
simplify difficult mathematical computations
– The first slide rule appeared around 1622
– Blaise Pascal designed and built one of the first
mechanical calculators (named the Pascaline)
– Gottfried Leibnitz constructed a mechanical
calculator called Leibnitz’s Wheel
Invitation to Computer Science, 5th Edition
16
Figure 1.4 The Pascaline. One of the Earliest Mechanical Calculators
Invitation to Computer Science, 5th Edition
17
The Early Period: Up to 1940
• Difference Engine
– Could do addition, subtraction, multiplication, and
division to six significant digits
– Could solve polynomial equations and other complex
mathematical problems
• Babbage’s Analytic Engine
– Amazingly similar in design to a modern computer
Invitation to Computer Science, 5th Edition
18
The Early Period: Up to 1940
(continued)
• Herman Hollerith
– Designed and built programmable card-processing
machines that could automatically read, tally, and
sort data entered on punched cards
– Founded the Computer Tabulating Recording
Company
– In 1924, Hollerith’s tabulating machine company
changed its name to IBM
Invitation to Computer Science, 5th Edition
19
The Birth of Computers: 1940–1950
• Mark I
– General-purpose, electromechanical programmable
computer that used a mix of relays, magnets, and
gears to process and store data
• ENIAC (Electronic Numerical Integrator and
Calculator)
– Completed in 1946
– First fully electronic general-purpose programmable
computer
Invitation to Computer Science, 5th Edition
20
The Birth of Computers: 1940–1950
(continued)
• John Von Neumann
– Proposed a radically different computer design
based on a model called the stored program
computer
– Research group at the University of Pennsylvania
built one of the first stored program computers,
called EDVAC, in 1951
Invitation to Computer Science, 5th Edition
21
The Modern Era: 1950 to the Present
• First generation of computing
– 1950 to 1957
• Second generation (1957–1965)
– Era of FORTRAN and COBOL
– The occupation called programmer was born
Invitation to Computer Science, 5th Edition
22
The Modern Era: 1950 to the Present
(continued)
• Third generation (1965 to 1975)
– Era of the integrated circuit
– Birth of the first minicomputer
– Birth of the software industry
• Fourth generation (1975 to 1985)
– Saw the appearance of the first microcomputer and
computer network
– Electronic mail became an important application
Invitation to Computer Science, 5th Edition
23
The Modern Era: 1950 to the Present
(continued)
• Fifth generation (1985–?)
– Massively parallel processors capable of quadrillions
(1015) of computations per second
– Handheld digital devices and other types of personal
digital assistants (PDAs)
– High-resolution graphics for imaging, animation,
movie making, and virtual reality
Invitation to Computer Science, 5th Edition
24
Figure 1.8 Some of the Major Advancements in Computing
Invitation to Computer Science, 5th Edition
25
Organization of the Text
Figure 1.9 Organization of the Text into a Six-Layer Hierarchy
Invitation to Computer Science, 5th Edition
26
Summary
• Computer science is the study of algorithms
• An algorithm is a well-ordered collection of
unambiguous and effectively computable operations
that, when executed, produces a result and halts in a
finite amount of time
• If we can specify an algorithm to solve a problem, then
we can automate its solution
• Computers developed from mechanical calculating
devices to modern electronic marvels of miniaturization
Invitation to Computer Science, 5th Edition
27