ENG 1181 College of Engineering Engineering Education Innovation Center P. 1 1 Computer Problem Solving in MATLAB Topics Covered: 1.Problem Solving 2.Top-Down.

Slides:



Advertisements
Similar presentations
Prof. B. I. Khodanpur HOD – Dept. of CSE R. V. College of Engineering
Advertisements

Chapter 1 - An Introduction to Computers and Problem Solving
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming The software development method algorithms.
Algorithms and Problem Solving-1 Algorithms and Problem Solving.
Chapter 3 Program Design and Branching Structures Dr. Ali Can Takinacı İstanbul Technical University Faculty of Naval Architecture and Ocean Engineering.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
Engineering H192 - Computer Programming The Ohio State University Gateway Engineering Education Coalition Lect 2P. 1Winter Quarter Problem Solving Lecture.
Project Management Session 7
Chapter 2: Developing a Program Extended and Concise Prelude to Programming Concepts and Design Copyright © 2003 Scott/Jones, Inc.. All rights reserved.
Engineering Fundamentals and Problem Solving, 6e
Chapter 1 Program Design
Engineering H192 - Computer Programming The Ohio State University Gateway Engineering Education Coalition Lect 3P. 1Winter Quarter Structured Engineering.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
Engineering H192 - Computer Programming The Ohio State University Gateway Engineering Education Coalition Lect 3P. 1Winter Quarter Structured Engineering.
Programming Logic and System Analysis
Fundamentals of C programming
Program Design ENGR 1181 MATLAB 01. Program Design in Real Life Complex manufacturing processes require careful logic mapping to determine what actions.
Software Development Concepts ITEC Software Development Software Development refers to all that is involved between the conception of the desired.
Class 6_1 Today’s topic: More on engineering analysis and modeling Your “computer modeling” assignment.
Section 2: Science as a Process
Using Visual Logic To Teach A First Course In Programming Logic
The University of Texas – Pan American
Unit 2: Engineering Design Process
Simple Program Design Third Edition A Step-by-Step Approach
Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Twelfth Edition.
ENGR 1181 College of Engineering Engineering Education Innovation Center MAT – Program Design.
Chapter 10 Information Systems Analysis and Design
Describe the Program Development Cycle. Program Development Cycle The program development cycle is a series of steps programmers use to build computer.
© 2011 Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of Stewart Venit ~ Elizabeth Drake Developing a Program.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
Chapter 2 Problem Solving On A Computer 2.1 Problem Solving Steps Solving a problem on a computer requires steps similar to those followed when solving.
Grown-up Software Development A Summary and Methodological Principles.
Engineering H192 - Computer Programming Gateway Engineering Education Coalition Lect 2P. 1Winter Quarter Problem Solving Lecture 2.
Introduction to Problem Solving. INTRODUCTION TO PROBLEM SOLVING Engineers must analyze and solve a wide range of technical problems. Some will be reasonably.
Introduction to Earth Science Section 2 Section 2: Science as a Process Preview Key Ideas Behavior of Natural Systems Scientific Methods Scientific Measurements.
PROGRAM DEVELOPMENT CYCLE. Problem Statement: Problem Statement help diagnose the situation so that your focus is on the problem, helpful tools at this.
Engineering H192 - Computer Programming Gateway Engineering Education Coalition Lect 3P. 1Winter Quarter Structured Engineering Problem Solving and Logic.
The E ngineering Design Process Advanced Design Applications The E ngineering Design Process Teacher Resource – The First Five Days: Day 2 © 2014 International.
Computing Higher – SD Unit - Topic 8 – Procedure and Standard Algorithms P Lynch, St Andrew’s High School Unit 2 Software Development Process Topic.
How Are Computers Programmed? CPS120: Introduction to Computer Science Lecture 5.
8.1 8 Algorithms Foundations of Computer Science  Cengage Learning.
Chapter Topics 2.1 Designing a Program 2.2 Output, Input, and Variables 2.3 Variable Assignment and Calculations 2.4 Variable Declarations and Data Types.
Chapter 11  2000 by Prentice Hall System Analysis and Design: Methodologies and Tools Uma Gupta Introduction to Information Systems.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
CMPSC 16 Problem Solving with Computers I Spring 2014 Instructor: Tevfik Bultan Lecture 4: Introduction to C: Control Flow.
Programming. In your own words, explain what an algorithm is, and give an example of how people use algorithms every day.
Program Design. Simple Program Design, Fourth Edition Chapter 1 2 Objectives In this chapter you will be able to: Describe the steps in the program development.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
How Computers Solve Problems Computers also use Algorithms to solve problems, and change data into information Computers can only perform one simple step.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
| MSC 8102:PROGRAMMING CONCEPTS By Vincent Omwenga, PhD. 1.
 Problem Analysis  Coding  Debugging  Testing.
Algorithms and Problem Solving
Engineering Fundamentals and Problem Solving, 6e
Programming Languages
Presentation of Flowchart
Chapter 2- Visual Basic Schneider
Section 2: Science as a Process
Introduction to Computer Programming
Problem Solving Techniques
Chapter 2- Visual Basic Schneider
Chapter 2- Visual Basic Schneider
Introduction to Structured Programming
Algorithms and Problem Solving
ICT Gaming Lesson 2.
Basic Concepts of Algorithm
WRITING AN ALGORITHM, PSEUDOCODE, AND FLOWCHART LESSON 2.
Presentation transcript:

ENG 1181 College of Engineering Engineering Education Innovation Center P. 1 1 Computer Problem Solving in MATLAB Topics Covered: 1.Problem Solving 2.Top-Down Example 3.Logic Diagrams

ENG 1181 INTRODUCTION TO PROBLEM SOLVING Engineers must analyze and solve a wide range of technical problems. They can be: –reasonably simple single-solution problems –open-ended that require a team of engineers from several disciplines –have no clear solution P. 2 2

ENG 1181 Problem Solving noneone> one insufficient sufficient excess Rev: , PAC MAT - Computer Problem Solving

ENG 1181 Problem Solving noneone> one insufficient sufficient excess Rev: , PAC MAT - Computer Problem Solving

ENG 1181 INTRODUCTION TO PROBLEM SOLVING Problem solving includes –Experience –Knowledge –Process –Art Our Focus: Computer Assisted Problem Solving – Programming Computers are good tools for solving rule-based problems P. 5

ENG 1181 Computers are good at chess Much of basic chess is related to defined rules and keeping track of all possibilities so many moves ahead. These are the kinds of things that computers are very good at. Judgment in chess comes in at the higher levels, and is much of what distinguishes a grand master from a club player. Recent chess teaching programs, such as “Chess Titans” have the computer restricted at lower levels so that novices have a chance. P. 6

ENG 1181 Computers are bad at bridge In bridge, judgment is required at the lowest levels. Computers have trouble playing even club level bridge. In the future, computers may develop judgment through neural networking or other advances, but at the present time this doesn’t effectively exist. P. 7

ENG 1181 Computer Problem Solving So look to computers when you have quantifiable rules to follow, large quantities of numbers to keep track of, and well defined procedures. Judgment is still the realm of Engineers. P. 8

ENG 1181 SCIENCE AND ART P. 9 SCIENCE Math Physics Chemistry Mechanics Etc. ART Creativity Judgement Common-Sense Etc. Problem solving requires a combination of science and art:

ENG 1181 THE ENGINEERING METHOD Recognize and understand the problem Gather data (and verify its accuracy) Select Guiding theories and principles Make assumptions when necessary Solve the problem Verify the results Present the solution P. 10

ENG 1181 Problem Solving 1.Define 2.Represent 3.Plan 4.Implement 5.Evaluate Rev: , PAC MAT - Computer Problem Solving

ENG 1181 Define and Represent 1.Identify the Problem –Be able to create a clear written statement of the problem to be solved. 2.Determine what is required for the solution –What is known? –What is unknown? –Restrictions or limitations? –Any special cases? P. 12

ENG 1181 Plan and Implement 3.Develop a step-by-step plan (algortihm) –How are you going to solve it? 4.Outline the solution in a logic diagram 5.Execute the plan –Keep track of what works and what doesn’t P. 13

ENG 1181 Evaluate 6.Analyze the solution –Revise the plan and re-execute as needed –Keep the good parts of the plan and alter the not-so-good ones 7.Report/document the results –Let your team know how your idea worked in writing. P. 14

ENG 1181 TOOLS FOR PROGRAM DEVELOPMENT A variety of tools and techniques can be used in the process of program development Useful for organizing the tasks in problem solving Many of the tools are focused on the: –development or formulation of algorithms –representation of algorithms –refinement or structuring of algorithms P. 15

ENG 1181 TOOLS FOR PROGRAM DEVELOPMENT Top-down design technique –Start with overall function and perform several step-wise refinements Outlining –Follow a top down approach to create an outline down to the level of single logical actions, when listed sequentially the results are Pseudo code –Plain English descriptions of what a computer is to do Logic diagrams or flowcharts –Alternate representations of algorithms including graphic and state representations, logic flows P. 16

ENG 1181 TOP-DOWN STEPWISE REFINEMENT Begin with a single statement that conveys the overall function of the program. This is a complete (but simple) representation of the program. Divide this "top" statement into a series of smaller tasks which break the program down into the major components required to accomplish its function. P. 17

ENG 1181 TOP-DOWN STEPWISE REFINEMENT Next, refine each of the smaller tasks into yet smaller steps, defining specific internal and external data as may be needed in this second refinement. Continue refinement until algorithm has been broken into easily developed tasks. Code for each of these tasks are then constructed using knowledge of available computer commands and syntax. P. 18

ENG 1181 Characteristics of Flow Charts Useful visual tool for program development Describes the logic flow of the program Not a complete description of program Not only tool to use Made before writing the program No formal standards, but common guidelines Usually used to describe major program components, not individual lines of code P. 19

ENG 1181 Flow Chart Symbols Decision or Selection Structure: P. 20 process General Processing: Quit? Y N A<B? F T Start End Start or End a Program: