Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Chapter 1: Introduction to Computers and Programming.

Slides:



Advertisements
Similar presentations
 Computer hardware components are the physical pieces of the computer.  The major hardware components of a computer are: – The central processing.
Advertisements

Starting Out with C++, 3 rd Edition 1 Chapter 1. Introduction to Computers and Programming.
COSC 120 Computer Programming
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design First Edition by Tony Gaddis.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Sixth Edition by Tony Gaddis, Judy Walters,
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages C++ Programming:
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 1 Introduction.
Copyright 2003 Scott/Jones Publishing Brief Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Seventh Edition by Tony Gaddis, Judy.
CS102 Introduction to Computer Programming
Introduction to Computers and Python. What is a Computer? Computer- a device capable of performing computations and making logical decisions at speeds.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Alternate Version of STARTING OUT WITH C++ 4 th Edition Chapter 1 Introduction to Computers and Programming.
Why Program? Computer – programmable machine designed to follow instructions Program – instructions in computer memory to make it do something Programmer.
Chapter Introduction to Computers and Programming 1.
Introduction to Programming Dr Masitah Ghazali Programming Techniques I SCJ1013.
CHAPTER 4: INTRODUCTION TO COMPUTER ORGANIZATION AND PROGRAMMING DESIGN Lec. Ghader Kurdi.
CSC 125 Introduction to C++ Programming Chapter 1 Introduction to Computers and Programming.
Introduction to Programming. Our Book in CS Why Program? Lets watch a video
Topics Introduction Hardware and Software How Computers Store Data
General Computer Science for Engineers CISC 106 Lecture 02 Dr. John Cavazos Computer and Information Sciences 09/03/2010.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming 1.
COP1220/CGS2423 Introduction to C++/ C for Engineers Professor: Dr. Miguel Alonso Jr. Fall 2008.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Chapter 1: Introduction to Computers and Programming.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Copyright © 2012 Pearson Education, Inc. Chapter 1 Introduction to Computing and Programming.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Seventh Edition by Tony Gaddis, Judy.
An Introduction to Computers August 12, 2008 Mrs. C. Furman.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 1 Introduction to Computers and Programming.
Overview of Programming and Problem Solving Textbook Chapter 1 1.
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
An Object-Oriented Approach to Programming Logic and Design Chapter 1 An Overview of Computers and Logic.
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 1 컴퓨터와.
1 12/4/1435 h Lecture 2 Programs and Programming Languages.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
Computer Programming (1) Code & No.: CS 102 CREDIT HOURS: 5 UNIT Lecture 3.0 hours/week Lab: 2.0 hour/on every week a. This course introduces the students.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Seventh Edition by Tony Gaddis, Judy.
Introduction عزيزتي الطالبة : يهدف هذا المبحث من تمكينك من التعرف الى مفهوم لغات البرمجة وتعلم أسياسيات لغة البرمجة من خلال دراسة أجزاء من لغة C++ وكتابة.
Brief Version of Starting Out with C++ Chapter 1 Introduction to Computers and Programming.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming Dr. Halla Abdel Hameed.
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved. Introduction to Computers and Computing.
Copyright © 2014, 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Eighth Edition by Tony Gaddis,
C++ Programming: From Problem Analysis to Program Design, Fifth Edition Chapter 1: An Overview of Computers and Programming Languages.
Chapter 1: Introduction to Computers and Programming.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
CHAPTER 1 OVERVIEW OF COMPUTER AND PROGRAMMING 1.1 Electronic Computer Then and Now 1.2 Computer Hardware 1.3 Computer Software 1.4 The Software Development.
Chapter 1: Introduction to Computers and Programming
Java Programming: From the Ground Up
BASIC PROGRAMMING C SCP1103 (02)
Chapter 1: An Overview of Computers and Programming Languages
Microsoft Imagine All KU students currently enrolled in a CS class are eligible to receive Microsoft software, including Operating Systems development.
Topics Introduction Hardware and Software How Computers Store Data
Chapter 1: An Overview of Computers and Programming Languages
BASIC PROGRAMMING C SCP1103 (02)
Overview of Computers and Programming Chapter 1
Chapter 1: Introduction to Computers and Programming
Chapter 1. Introduction to Computers and Programming
Chapter 1: An Overview of Computers and Programming Languages
C++ Programming: From Problem Analysis to Program Design
Chapter 1: Introduction to Computers and Programming
Topics Introduction Hardware and Software How Computers Store Data
Language Basics.
Topics Introduction Hardware and Software How Computers Store Data
Chapter 1 Introduction(1.1)
From Problems to Algorithms to Programs
Understand the interaction between computer hardware and software
Chapter 1: Introduction to Computers and Programming
Chapter 1: Introduction to Computers and Programming
Presentation transcript:

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Chapter 1: Introduction to Computers and Programming

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.1 Why Program?

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Why Program? Computer – programmable machine designed to follow instructions Program – instructions in computer memory to make it do something Programmer – person who writes instructions (programs) to make computer perform a task SO, without programmers, no programs; without programs, a computer cannot do anything

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.2 Computer Systems: Hardware and Software

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Main Hardware Component Categories: 1.Central Processing Unit (CPU) 2.Main Memory 3.Secondary Storage 4.Input Devices 5.Output Devices

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Main Hardware Component Categories Figure 1-2

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Central Processing Unit (CPU) Comprised of: Control Unit Retrieves and decodes program instructions Coordinates activities of all other parts of computer Arithmetic & Logic Unit Hardware optimized for high-speed numeric calculation Hardware designed for true/false, yes/no decisions

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. CPU Organization Figure 1-3

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Main Memory Called Random Access Memory (RAM) Volatile Erased when the computer is turned off

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Secondary Storage Non-volatile Data retained when computer is turned off Variety of media: Magnetic: Floppy disk Hard drive Optical: Compact Disk-Read Only Memory (CD-ROM) Digital Video Disk (DVD) Blu-Ray Disk (BRD) Universal Serial Bus (USB) drives Secure Digital High Capacity (SDHC) cards

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Memory and Storage Organized as follows: bit: Smallest piece of memory Has values 0 (off, false) or 1 (on, true) byte: 8 consecutive bits Each byte is identified by a unique number, its address Each byte is unique (no overlap)

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Memory and Storage Each block above represents a byte The number 149 is stored in the byte with the address 16 The number 72 is stored at address is the largest number for a byte

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Input Devices Devices that send information to the computer from outside Many devices can provide input: Initial Input: Keyboard, mouse, scanner, digital camera, microphone, etc. Secondary Storage: Hard drives, CD drives, DVD drives, etc.

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Software-Programs That Run on a Computer Categories of software: System software: Programs that manage the computer hardware and the programs that run on them Examples: operating systems, utility programs, device drivers Application software: Programs that provide services to the user Examples: word processing, games, programs to solve specific problems, software development tools

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.3 Programs and Programming Languages

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programs and Programming Languages A program is a set of instructions for the computer to follow to perform a task Starts with an algorithm A set of well-defined steps.

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Example Algorithm for Calculating Gross Pay

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Machine Language The previous algorithm defines the steps for calculating the gross pay, but it is not ready to be executed on the computer. The computer only executes machine language instructions

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Machine Language Machine language instructions are binary numbers, such as Programmers use programming languages instead of writing programs in machine language

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programs and Programming Languages Types of languages: Low-level: used for communication with computer hardware directly. Often written in binary machine code (0’s/1’s) directly or code very close to machine language High-level: closer to human language

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Some Well-Known High-Level Programming Languages BASIC FORTRAN COBOL C C++ C# Java JavaScript Python Ruby Visual Basic

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. From a High-Level Program to an Executable File a) Create file containing the program with a text editor. b) Run preprocessor to convert source file directives to source code program statements. c) Run compiler to convert source program into machine instructions. d) Run linker to connect hardware-specific code to machine instructions, producing an executable file. Steps b–d are often performed by a single command or button click. Errors detected at any step will prevent execution of following steps.

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. From a High-Level Program to an Executable File #include int main() { std::cout << “Hello World” << std::endl; return 0; }

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Integrated Development Environments (IDEs) An integrated development environment, or IDE, combine all the tools needed to write, compile, and debug a program into a single software application. Examples are Microsoft Visual C++, Turbo C++ Explorer, CodeWarrior, Dev C++, CodeBlocks, etc.

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Integrated Development Environments (IDEs)

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.4 What is a Program made of?

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. What is a Program Made of? Common elements in programming languages: Key Words Operators Punctuation Programmer-Defined Identifiers Syntax Rules on how to integrate all of the above

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Program 1-1 // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; }

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Key Words Also known as reserved words Have a special meaning in C++ Can not be used for any other purpose Key words in the Program 1-1: int double return

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; } Key Words

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programmer-Defined Identifiers Names made up by the programmer Not part of the C++ language Represent various things: variables, functions, etc. In Program 1-1: hours rate pay

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; } Programmer-Defined Identifiers

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Operators Used to perform operations on data Many types of operators: Arithmetic: +,-,*,/ Assignment: = Some operators in Program1-1: << >> = *

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; } Operators

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Punctuation Characters that mark the end of a statement, or that separate items in a list In Program 1-1:, ; " ( ) { } //

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; } Punctuation

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Syntax The rules of grammar that must be followed when writing a program Controls the use of key words, operators, programmer-defined identifiers, and punctuation

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programmer Defined Identifiers System Rules Letters, Digits, Underscores Cannot start with a digit Devore’s Rules Must be meaningful Cannot start with underscore Cannot be a single letter (not meaningful)

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programmer Defined Identifiers Uses and Format Variables (more later, Chapter 2) Begin with a lower case letter Use under_scores to separate words or Use camelCase Constants (more later, Chapter 2) All upper case using underscore to separate words. Function Names (more later, Chapter 6) Same as variables Structure/Class Names (more later, Chapter 11) Begin with a upper case letter

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Variables A variable is a named storage location in the computer’s memory for holding a piece of data. In Program 1-1 we used three variables: The hours variable was used to hold the hours worked The rate variable was used to hold the pay rate The pay variable was used to hold the gross pay

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Variable Definitions To create a variable in a program you must write a variable definition Here is the statement from Program 1-1 that defines the variables: double hours, rate, pay;

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Variable Definitions There are many different types of data, which you will learn about in this course. A variable holds a specific type of data. The variable definition specifies the type of data the variable holds, and the variable name.

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Variable Definitions Once again, line 6 from Program 1-1: double hours, rate, pay; The word double is used to hold double- precision floating point numbers. (more in Chapter 2)

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.5 Input, Processing, and Output

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Input, Processing, and Output Three steps that a program typically performs: 1) Gather input data: From keyboard, or other input device From files on disk drives 2) Process the input data 3) Display the results as output: Send it to the screen Write it to a file

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.6 The Programming Process

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. The Programming Process

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.7 Procedural and Object-Oriented Programming

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Procedural and Object-Oriented Programming Procedural programming: Focus is on the process. Procedures/functions are written to process data. Object-Oriented programming: Focus is on objects, which contain data and the means to manipulate the data. Messages are sent to objects to perform operations.

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Procedural and Object-Oriented Programming C++ can be used to: Develop procedural programs Develop Object-Oriented Programs Develop programs that are a combination of procedural and object-oriented Intro to C++ focuses on procedural programs but using some objects Advanced C++ focuses on Object Oriented programs (developing your own objects)

Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. End of Chapter 1