# ITM 207 Study Guide - Final Guide: Dynamic Array, Selection Sort, Problem Solving

53 views5 pages
Published on 18 Apr 2013
School
Ryerson University
Department
Information Technology Management
Course
ITM 207
Professor
Problem solving
The act of finding a solution to a perplexing, distressing, vexing, or unsettled question
How do you solve a problem
Understand the problem
Devise a plan
Carry out the plan
Look Back
Strategies
*Ask Questions but *Never reinvent the wheel!
What do I know about the problem?
What is the information that I have to process in order the find the solution?
What does the solution look like?
What sort of special cases exist?
How will I recognize that I have found the solution?
*Ask Questions but *Never reinvent the wheel!
- Similar problems come up again and again
- A good programmer recognizes a task/subtask that has been solved before and plugs in solution
*Divide and Conquer
- Break up a large problem into smaller units and solve each smaller problem
- Applies the concept of Abstraction
- Approach can be applied over and over until each subtask is manageable
Computer Problem Solving
Summary of Methodology
Analyze the Problem
Understand the problem!!
Develop a plan of attack
List the Main Tasks (becomes Main Module)
Restate problem as a list of tasks (modules)
Give each task a name
Write the Remaining Modules
Restate each abstract module as a list of tasks
Give each task a name
Re-sequence and Revise as Necessary
Unlock document

This preview shows pages 1-2 of the document.
Unlock all 5 pages and 3 million more documents.

Process ends when all steps (modules) are concrete
Algorithms
A set of unambiguous instructions for solving a problem or subproblem in a finite amount of time using a
finite amount of data
Algorithms with Selection
E.x.
1. Write “Enter Temperature”
3. Determine what to wear.
IF (temperature > 90)
Write “Texas weather: wear shorts”
ELSE IF (temperature > 70)
Write “Ideal weather: short sleeves are fine”
ELSE
Write “Stay inside”
Abstract Step
An algorithm step with unspecified details
Concrete Step
An algorithm step with all details specified
Developing Algorithms (to solve a computer problem)
Top-Down Design- Focuses on tasks to be done
Object-Oriented Design- Focuses on that data involved in the solution
Control Structure- An instruction that determines the order of execution of instructions in a program
Looping Statements
Unlock document

This preview shows pages 1-2 of the document.
Unlock all 5 pages and 3 million more documents.

## Document Summary

The act of finding a solution to a perplexing, distressing, vexing, or unsettled question. Similar problems come up again and again. A good programmer recognizes a task/subtask that has been solved before and plugs in solution. Break up a large problem into smaller units and solve each smaller problem. Approach can be applied over and over until each subtask is manageable. Restate problem as a list of tasks (modules) Restate each abstract module as a list of tasks. Process ends when all steps (modules) are concrete. A set of unambiguous instructions for solving a problem or subproblem in a finite amount of time using a finite amount of data. E. x: write enter temperature , read temperature, determine what to wear. Top-down design- focuses on tasks to be done. Object-oriented design- focuses on that data involved in the solution. Control structure- an instruction that determines the order of execution of instructions in a program.

# Get OneClass Grade+

Unlimited access to all notes and study guides.

75% OFF
\$9.98/m
\$39.98/m
\$39.98

## or

You will be charged \$119.76 upfront and auto renewed at the end of each cycle. You may cancel anytime under Payment Settings. For more information, see our Terms and Privacy.
Payments are encrypted using 256-bit SSL. Powered by Stripe.