Problem Solving Techniques

Slides:



Advertisements
Similar presentations
PROBLEM SOLVING TECHNIQUES
Advertisements

Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
Al-Karma Language School Computer Department Prep. 3.
Program Development Procedures 1.Program definition clearly define what the problem is. clearly define Input and output data (types, precision, units used)
Lecture Notes 1/21/04 Program Design & Intro to Algorithms.
Algorithms. Introduction Before writing a program: –Have a thorough understanding of the problem –Carefully plan an approach for solving it While writing.
Chapter 2: Developing a Program Extended and Concise Prelude to Programming Concepts and Design Copyright © 2003 Scott/Jones, Inc.. All rights reserved.
Programming Fundamentals (750113) Ch1. Problem Solving
1414 CHAPTER PROGRAMMING AND LANGUAGES. © 2005 The McGraw-Hill Companies, Inc. All Rights Reserved Competencies Describe the six steps of programming.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
1 Chapter 2 Problem Solving Techniques INTRODUCTION 2.2 PROBLEM SOLVING 2.3 USING COMPUTERS IN PROBLEM SOLVING : THE SOFTWARE DEVELOPMENT METHOD.
Chapter 3 Planning Your Solution
BPC.1 Basic Programming Concepts
PRE-PROGRAMMING PHASE
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
The Art of Programming Top-Down Design. The Art of Problem Solving The art of problem solving is the transformation of an English description of a problem.
COMP An Introduction to Computer Programming : University of the West Indies COMP6015 An Introduction to Computer Programming Lecture 02.
Chapter 2: Developing a Program Prelude to Programming Concepts and Design Copyright © 2001 Scott/Jones, Inc.. All rights reserved. 1 Chapter 2 Developing.
1 Shawlands Academy Higher Computing Software Development Unit.
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
Designing and Debugging Batch and Interactive COBOL Programs Chapter 5.
Programming for Beginners Martin Nelson Elizabeth FitzGerald Lecture 5: Software Design & Testing; Revision Session.
© 2011 Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of Stewart Venit ~ Elizabeth Drake Developing a Program.
Problem Solving Techniques. Compiler n Is a computer program whose purpose is to take a description of a desired program coded in a programming language.
C++ Programming Language Lecture 2 Problem Analysis and Solution Representation By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department.
IXA 1234 : C++ PROGRAMMING CHAPTER 1. PROGRAMMING LANGUAGE Programming language is a computer program that can solve certain problem / task Keyword: Computer.
Definition of Terms Software/Programs Programs that directs the operation of a computer system Set of instructions Codes Programming Process of planning,
Cs413_design04.ppt Design and Software Development Design : to create a functional interface that has high usability Development : an organized approach.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
The Software Development Process
1 Program Development l Problem definition l Problem analysis l Algorithm design l Program coding l Program testing l Program documentation.
1 Program Planning and Design Important stages before actual program is written.
Introduction to programming Carl Smith National Certificate Year 2 – Unit 4.
Chapter 14 Programming and Languages McGraw-Hill/Irwin Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved.
The Hashemite University Computer Engineering Department
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Problem-solving with Computers. 2Outline  Computer System  5 Steps for producing a computer program  Structured program and programming  3 types of.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
CSCI 161 Lecture 3 Martin van Bommel. Operating System Program that acts as interface to other software and the underlying hardware Operating System Utilities.
Lecture #1: Introduction to Algorithms and Problem Solving Dr. Hmood Al-Dossari King Saud University Department of Computer Science 6 February 2012.
Problem Solving.  Similar to Solving Math Word Problem  Read the Problem  Decide how to go about Solving the Problem  Solve the Problem  Test the.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
| MSC 8102:PROGRAMMING CONCEPTS By Vincent Omwenga, PhD. 1.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
 Problem Analysis  Coding  Debugging  Testing.
13 1 Computer Programming Ch.15-A,B,C FALL 2000 Rob Wolfe.
ICS 3UI - Introduction to Computer Science
Unit 3: ALGORITHMS AND FLOWCHARTS
CSCI-235 Micro-Computer Applications
Chapter 2- Visual Basic Schneider
Programming Problem steps must be able to be fully & unambiguously described Problem types; Can be clearly described Cannot be clearly described (e.g.
Algorithm Algorithm is a step-by-step procedure or formula or set of instruction for solving a problem Its written in English language or natural language.
Algorithm and Ambiguity
Understand the Programming Process
ALGORITHMS AND FLOWCHARTS
Unit# 9: Computer Program Development
Chapter 16 Component-Level Design
Programming Fundamentals (750113) Ch1. Problem Solving
Programming Fundamentals (750113) Ch1. Problem Solving
ALGORITHMS AND FLOWCHARTS
Chapter 2- Visual Basic Schneider
CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING
Chapter 2- Visual Basic Schneider
The Programming Process
Understand the Programming Process
A programming language
Programming Fundamentals (750113) Ch1. Problem Solving
ICT Gaming Lesson 2.
Programming Fundamentals (750113) Ch1. Problem Solving
WRITING AN ALGORITHM, PSEUDOCODE, AND FLOWCHART LESSON 2.
Presentation transcript:

Problem Solving Techniques

Six Steps to program problem solving. Problem definition Problem analysis Algorithm design Top-down approach Pseudocode Program flowchart Program coding Program testing and debugging Program documentation

Problem definition Describe the problem in a clear and precise statement. We know exactly what needs to be done.

Problem analysis Understand completely the input data required and the output produced by the program. What are the input data? What are their data types? What are the output data? What are the output formats?

Algorithm design Algorithm is a specification of a method to solve a problem.

Stepwise refinement Subdivide the problem into sub-problems. Each sub-problem is further divided into smaller sub-problems. Process is repeated until each sub-problem is one that is easy to be solved. The above process is known as Stepwise refinement.

Top-down design If the decomposition starts at the top level and then works down, It is called Top-down design. The task identified at each level of subdivision is called a module. The module can be implemented by procedure in Pascal.

Pseudocode A sequence of English-like statements that represent an algorithm. The algorithm is written using a language similar to programming languages.

Program flowcharts Used to illustrate the logic structures, they are sequence, selection and loop graphically.

Program Coding Write the program in programming language is called coding. Write structure program with modules.

A good program should be Use modular approach Easy to read

Program testing and debugging Debugging is test the program and get rid of bugs. Three types of Programming error: Syntax error Grammatical rules of the programming language. Run-time error Errors occurred when program is running. Eg. Divided by zero. Logical error Incorrect algorithm or incorrect implementation of an algorithm produce incorrect or unexpected result.

Program documentation Consists of written descriptions about the program. Used to make others can understand the program.