Problem Solving Methods. Class Objectives Learn to apply the problem solving process Learn techniques for error-free problem solving.

Slides:



Advertisements
Similar presentations
Lecture 2: Developing Procedural Thinking (How to think like a programmer) BJ Furman 06FEB2012.
Advertisements

PROBLEM SOLVING TECHNIQUES
COMPUTATIONS ON THE SPHEROID. Learning Objectives Calculate  and of a point given  and s from a point with known  and. Calculate  and s between points.
Error Measurement and Iterative Methods
CSE332: Data Abstractions Lecture 27: A Few Words on NP Dan Grossman Spring 2010.
Feature Selection for Regression Problems
1 CS 430 / INFO 430 Information Retrieval Lecture 24 Usability 2.
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Algorithms. Introduction Before writing a program: –Have a thorough understanding of the problem –Carefully plan an approach for solving it While writing.
Programming Fundamentals (750113) Ch1. Problem Solving
Short Course on Introduction to Meteorological Instrumentation and Observations Techniques QA and QC Procedures Short Course on Introduction to Meteorological.
ENGINEERING YOUR FUTURE
New Mexico Computer Science For All Introduction to Algorithms Maureen Psaila-Dombrowski.
ALGORITHMS AND FLOWCHARTS
General Analysis Procedure and Calculator Policy Calculator Policy.
Sense of Initiative and Entrepreneurship This project has been funded with support from the European Commission. This [publication] communication reflects.
Fruitful functions. Return values The built-in functions we have used, such as abs, pow, int, max, and range, have produced results. Calling each of these.
Chapter 8: Problem Solving
PROGRAMMING, ALGORITHMS AND FLOWCHARTS
Computational Complexity Polynomial time O(n k ) input size n, k constant Tractable problems solvable in polynomial time(Opposite Intractable) Ex: sorting,
Algorithmic Problem Solving CMSC 201 Adapted from slides by Marie desJardins (Spring 2015 Prof Chang version)
Enrico Fermi (September 29, 1901 – November 28, 1954) An Italian-born physicist Known for his work on the development of the first nuclear reactor, and.
An Introduction to Programming and Algorithms. Course Objectives A basic understanding of engineering problem solving process. A basic understanding of.
 Once the system has been installed it will be monitored to check whether it is working correctly. Sometimes problems with a system will not be found.
RESOURCES, TRADE-OFFS, AND LIMITATIONS Group 5 8/27/2014.
As Class Convenes l Find your team’s table and have a seat l Pick up Team’s Modeling Folder l Remove Chapter 1 Assignment l Place your Chapter 2 Assignment.
Practice and Evaluation. Practice Develop a java class called: SumCalculator.java which computes a sum of all integer from 1 to 100 and displays the result.
Team Exercise  If you have enough money to buy a car, what kind of car do you like to buy?  If you are a car design engineer, identify design goal and.
Algorithms CS139 – Aug 30, Problem Solving Your roommate, who is taking CS139, is in a panic. He is worried that he might lose his financial aid.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
1 Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples: b number of comparisons needed to find the.
ALGORITHMS AND FLOWCHARTS CSCI 105 – Computer Fluency.
Problem Solving Engineering Technology Mr. Austin.
Higher Mathematics Unit 1.3 Using Differentiation.
Even more problems.. Mean (average) I need a program that calculates the average of student test scores. I need a program that calculates the average.
CMPS 1371 Introduction to Computing for Engineers PRINCIPLES OF PROBLEM SOLVING.
Building Simulation Model In this lecture, we are interested in whether a simulation model is accurate representation of the real system. We are interested.
CS 5150 Software Engineering Lecture 7 Requirements 1.
Deriving Ramsey Numbers Interim Project Evaluations Team 7 Albuquerque Academy.
Introduction to Loops For Loops. Motivation for Using Loops So far, everything we’ve done in MATLAB, you could probably do by hand: Mathematical operations.
Program Design. The design process How do you go about writing a program? –It’s like many other things in life Understand the problem to be solved Develop.
Problem Solving Heuristics ABLE Teacher Academy. Polya Check your solution. Substitute your answer or results back into the problem. Are all of the conditions.
2.6 Problem solving strategies. Problem-solving skills are essential to success in physics. the ability to apply broad physical principles, usually represented.
Programming Introduction. What is a program? Computers cannot think for themselves, they can only follow instructions. A program is a set of instructions.
An Introduction to Programming with C++ Sixth Edition
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
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.
Lecture 3: Developing Procedural Thinking (How to think like a programmer) B Burlingame 16 Feb 2016.
General Analysis Procedure and Calculator Policy Calculator Policy.
6 th grade lesson plan (day 1 ) Students will be learning how to use the distributive property to create equivalent expressions. Students should be seated.
Design Process Overview. A design process is a systematic problem-solving strategy, with criteria and constraints, used to develop many possible solutions.
| MSC 8102:PROGRAMMING CONCEPTS By Vincent Omwenga, PhD. 1.
Program Design & Development EE 201 C7-1 Spring
Program design Program Design Process has 2 phases:
ALGORITHMS AND FLOWCHARTS
GC101 Introduction to computers and programs
CS111 Computer Programming
Requirements Analysis and Specification
Chapter 12: Query Processing
ALGORITHMS AND FLOWCHARTS
Objective of This Course
Algorithm Discovery and Design
ALGORITHMS AND FLOWCHARTS
Introduction to Structured Programming
09/24/07 DIMENSIONAL ANALYSIS.
Introduction to Programming
Overview Functional Testing Boundary Value Testing (BVT)
OGB Partner Advocacy Workshop 18th & 19th March 2010
Presentation transcript:

Problem Solving Methods

Class Objectives Learn to apply the problem solving process Learn techniques for error-free problem solving

Problem Solving Process Define and understand problem Gather information Generate potential methods and solutions. Refine and implement solution. Verify and test solution.

Define and Understand Understand what is being asked Describe input/output (I/O) what are you given knowns what are you trying to find unknowns Sketch the problem

Gather Information Collect necessary data List relevant equations/theories State all assumptions

Generate Solution Methods Apply theories and assumptions. Typically, there is more than one approach to solving a problem Work problem by hand using the potential solution methods Break problem into parts; scale it down; etc. e.g., if the problem was to calculate the average of 1000 numbers, work the problem by hand using, say, 10 numbers, in order to establish a method

Refine and Implement Evaluate solution methods. accuracy ease of implementation etc. Implement “best” solution.

Verify and Test Compare solution to the problem statement Is this what you were looking for? Does your answer make sense? Clearly identify the solution Sketch if appropriate

CHECK YOUR WORK!! Don’t stop at getting an answer!! Think about whether the answer makes physical sense. you are the instructor and you have to turn in final grades. In your haste, you calculate the average of Susie’s grades (100, 70, 90) to be 78 and give Susie a C...

Example State problem clearly: Given numeric student grades, determine grade distribution using regular grading scale. Describe I/O: Input: student numeric grades Output: numbers of A’s, B’s, C’s, etc.

Example (cont.) Gather data Grades: 91, 85, 82, 78, 76, 72, 65, 59, 94, 98 State theories and assumptions grade >= 90 is an A 90 > grade >= 80 is an B 80 > grade >= 70 is an C 70 > grade >= 60 is an D 60 > grade is an F

Example (cont.) Work the problem on a subset of the data: 91, 82, 78, 72, > 90, A’s = 1 82 > 80 and < 90, B’s = 1 78 > 70 and < 80, C’s = 1 72 > 70 and < 80, C’s = 2 59 >50 and < 60, F’s = 1 check your work!!

Example (cont.) Refine solution/implementation for each grade if grade >= 90 increment number of A’s by 1 if 90 > grade >= 80 increment number of B’s by 1 if 80 > grade >= 70 increment number of C’s by 1 if 70 > grade >= 60 increment number of D’s by 1 if grade < 60 increment number of F’s by 1 Output number of A’s, B’s, C’s, D’s, and F’s

Example (cont.) Test method and get the solution Grades: 91, 85, 82, 78, 76, 72, 65, 59, 94, 98 numA = 3, numB = 2, numC = 3, numD = 1, numF = 1 Is this correct?

Getting It Right The problem solving process may be an iterative process. If at first you don’t succeed (i.e., the algorithm test fails), try again… The more thorough you are at each step of the problem solving process, the more likely you are to get it right the first time!!

VCR Problem Statement You own a VCR that has two recording and playback speeds: 1) standard play (SP) and 2) extended play (EP). The speed in the EP mode is 1/3 the speed in the SP mode. At the SP setting, the video tapes you own can be used to record exactly 120 minutes of video. Develop an algorithm that specifies how long to record at SP speed, and how long to record at EP speed, given a program of known length.

Step 1: Understand the Problem You need to know how long to record at the EP speed and at SP speed so that the program fits exactly on a 120-minute tape. The EP mode does not have quality of resolution of the SP mode, so you want to record in the EP mode the minimum amount of time.

Exercise Turn off your computer monitor. As a TEAM, take 15 MINUTES to develop a solution to this problem