An introduction to programming with c fifth edition
This presentation is the property of its rightful owner.
Sponsored Links
1 / 32

An Introduction to Programming with C++ Fifth Edition PowerPoint PPT Presentation


  • 160 Views
  • Uploaded on
  • Presentation posted in: General

An Introduction to Programming with C++ Fifth Edition. Chapter 2 Beginning the Problem-Solving Process. Objectives. Explain the problem-solving process used to create a computer program Analyze a problem Complete an IPO chart Plan an algorithm using pseudocode and flowcharts

Download Presentation

An Introduction to Programming with C++ Fifth Edition

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


An introduction to programming with c fifth edition

An Introduction to Programming with C++Fifth Edition

Chapter 2

Beginning the Problem-Solving Process


Objectives

Objectives

  • Explain the problem-solving process used to create a computer program

  • Analyze a problem

  • Complete an IPO chart

  • Plan an algorithm using pseudocode and flowcharts

  • Desk-check an algorithm

An Introduction to Programming with C++, Fifth Edition


Concept lesson

Concept Lesson

  • Problem Solving

  • Solving Everyday Problems

  • Creating Computer Solutions to Problems

  • Analyzing the Problem

  • Planning the Algorithm

  • Desk-Checking the Algorithm

  • The Gas Mileage Problem

  • Summary

An Introduction to Programming with C++, Fifth Edition


Problem solving

Problem Solving

  • In this lesson, you will:

    • Explore the thought process followed when solving problems

    • Learn how to use a similar process to create a computer solution to a problem

      • Called a computer program

An Introduction to Programming with C++, Fifth Edition


Solving everyday problems

Solving Everyday Problems

  • First step in solving a problem: analyze it

    • E.g., problem of being hungry

  • Next, you plan, review, implement, evaluate, and modify (if necessary) the solution

    • E.g., if you are still hungry

An Introduction to Programming with C++, Fifth Edition


Solving everyday problems continued

Solving Everyday Problems (continued)

An Introduction to Programming with C++, Fifth Edition


Solving everyday problems continued1

Solving Everyday Problems (continued)

An Introduction to Programming with C++, Fifth Edition


Creating computer solutions to problems

Creating Computer Solutions to Problems

  • Analysis tools: IPO charts, pseudocode, flowcharts

  • To desk-check or hand-trace,use pencil, paper, and sample data to walk through algorithm

  • A coded algorithm is called a program

An Introduction to Programming with C++, Fifth Edition


Creating computer solutions to problems continued

Creating Computer Solutions to Problems (continued)

An Introduction to Programming with C++, Fifth Edition


Analyzing the problem

Analyzing the Problem

  • Analyze a problem to:

    • Determine the goal of solving it

      • Output

    • Determine the items needed to achieve that goal

      • Input

  • Always search first for the output

An Introduction to Programming with C++, Fifth Edition


Analyzing the problem continued

Analyzing the Problem (continued)

An Introduction to Programming with C++, Fifth Edition


Ipo charts

IPO Charts

  • Use an IPO chart to organize and summarize the results of a problem analysis

    • IPO:Input, Processing, and Output

An Introduction to Programming with C++, Fifth Edition


Ipo charts continued

IPO Charts (continued)

An Introduction to Programming with C++, Fifth Edition


Ipo charts continued1

IPO Charts (continued)

An Introduction to Programming with C++, Fifth Edition


Analyzing the problem continued1

Analyzing the Problem (continued)

  • First, reduce the amount of information you need to consider in your analysis:

An Introduction to Programming with C++, Fifth Edition


Analyzing the problem continued2

Analyzing the Problem (continued)

  • Worse than having too much information is not having enough information to solve problem:

An Introduction to Programming with C++, Fifth Edition


Analyzing the problem continued3

Analyzing the Problem (continued)

  • Distinguish between information that is missing and information that is implied:

An Introduction to Programming with C++, Fifth Edition


Planning the algorithm

Planning the Algorithm

  • Algorithm: set of instructions that will transform the problem’s input into its output

    • Record it in the Processing column of the IPO chart

  • Processing item: intermediate value used by algorithm when processing input into output

  • Pseudocode is a tool programmers use to help them plan an algorithm

    • Short English statements

An Introduction to Programming with C++, Fifth Edition


Planning the algorithm continued

Planning the Algorithm (continued)

An Introduction to Programming with C++, Fifth Edition


Planning the algorithm continued1

Planning the Algorithm (continued)

  • Flowcharts are also used to plan an algorithm

    • Use standardized symbols

    • Symbols connected with flowlines

    • Oval: start/stop symbol

    • Rectangle: process symbol

      • Represents tasks such as calculations

    • Parallelogram: input/output symbol

      • Represents I/O tasks

An Introduction to Programming with C++, Fifth Edition


Planning the algorithm continued2

Planning the Algorithm (continued)

An Introduction to Programming with C++, Fifth Edition


Planning the algorithm continued3

Planning the Algorithm (continued)

  • A problem can have more than one solution:

An Introduction to Programming with C++, Fifth Edition


Hints for writing algorithms

Hints for Writing Algorithms

This problem specification is almost identical to the one shown earlier in Figure 2-4

An Introduction to Programming with C++, Fifth Edition


Hints for writing algorithms continued

Hints for Writing Algorithms (continued)

You may use a portion of a previous solution to solve current problem

An Introduction to Programming with C++, Fifth Edition


Desk checking the algorithm

Desk-Checking the Algorithm

An Introduction to Programming with C++, Fifth Edition


Desk checking the algorithm continued

Desk-Checking the Algorithm (continued)

An Introduction to Programming with C++, Fifth Edition


Desk checking the algorithm continued1

Desk-Checking the Algorithm (continued)

  • Valid data is data that the programmer is expecting the user to enter

  • Invalid data is data that he or she is not expecting the user to enter

  • You should test an algorithm with invalid data

    • Users may make mistakes when entering data

An Introduction to Programming with C++, Fifth Edition


The gas mileage problem

The Gas Mileage Problem

An Introduction to Programming with C++, Fifth Edition


The gas mileage problem continued

The Gas Mileage Problem (continued)

  • After planning the algorithm, you desk-check it:

An Introduction to Programming with C++, Fifth Edition


Summary

Summary

  • Problem-solving typically involves analyzing the problem, and then planning, reviewing, implementing, evaluating, and modifying (if necessary) the solution

  • Programmers use tools (IPO charts, pseudocode, flowcharts) to help them analyze problems and develop algorithms

    • During analysis, you determine the output and input

    • During planning, you write the steps that will transform the input into the output

An Introduction to Programming with C++, Fifth Edition


Summary continued

Summary (continued)

  • After the analysis and planning, you desk-check the algorithm

    • Follow each of the steps in algorithm by hand

  • Coding refers to translating the algorithm into a language that the computer can understand

  • Before writing an algorithm, consider whether you have already solved a similar problem

An Introduction to Programming with C++, Fifth Edition


Application lesson using the first steps in the problem solving process

Application Lesson: Using the First Steps in the Problem-Solving Process

  • Lab 2.1: Stop and Analyze

  • Lab 2.2:

    • Create a program that the salesclerks can use to calculate and display the required number of rolls

  • Lab 2.3:

    • The program must now display the number of single and double rolls of wallpaper

  • Lab 2.4: Desk-Check Lab

  • Lab 2.5: Debugging Lab

An Introduction to Programming with C++, Fifth Edition


  • Login