School

Ryerson UniversityDepartment

Information Technology ManagementCourse Code

ITM 207Professor

Youcef DerbalStudy Guide

MidtermThis

**preview**shows pages 1-3. to view the full**16 pages of the document.**Ryerson

ITM 207

MIDTERM EXAM

STUDY GUIDE

Only pages 1-3 are available for preview. Some parts have been intentionally blurred.

Only pages 1-3 are available for preview. Some parts have been intentionally blurred.

Chapter 7: Problem Solving and Algorithms

CHAPTER 7.1: HOW TO SOLVE PROBLEMS

Polya’s How to Solve It list:

*We can replace the word unknown with problem, data with information, and theorem with

solution, and the list becomes applicable to all types of problems* the second step is the main

part of problem solving.

ASK QUESTIONS:

What do I know about the problem?

What does the solution look like?

What sort of special cases exist?

How will I recognize that I have found the solution?

LOOK FOR FAMILIAR THINGS:

If a solution exists, use it

If you’ve solved the same or similar problem before, just repeat the successful solution

*In computing, you see certain problems again and again in different guises

*A good programmer sees a task, or perhaps part of a task (a subtask), that has been

find more resources at oneclass.com

find more resources at oneclass.com

###### You're Reading a Preview

Unlock to view full version

Only pages 1-3 are available for preview. Some parts have been intentionally blurred.

Chapter 7: Problem Solving and Algorithms

solved before and plugs in the solution

oFor example; finding the daily high and low temperatures in a list of temperatures

is exactly the same problem as finding the highest and lowest grades in a list of

test scores. You want the largest and smallest values in a set of numbers

DIVIDE AND CONQUER

We break up a large problem into smaller pieces that we can solve individually

Tasks are divided into subtasks, which can be divided further into sub-sub tasks and so

forth

The divide-and-conquer approach can be applied over and over again until each subtask

is manageable

ALGORITHMS

*The last sentence in the second step in Polya’s list says that you should eventually

obtain a plan of the solution, and in computing, this plan is called an “algorithm”

An “Algorithm” is a set of instructions for solving a problem or sub-problem in a finite

amount of time using a finite amount of data

oImplicit in this definition is the understanding that the instructions are

unambiguous

In computing, we must make certain conditions explicit that are implicit in human

solutions

oFor example; in everyday life we would not consider a solution that takes forever

to be much of a solution that requires us to proves more information than we

are capable of processing

These constraints must be explicit in a computer solution, so the

definition of an algorithm includes them

The third step in Polya’s list is to carry out the plan --- that is, to test the solution to see

if it solves the problem

The fourth step is to examine the solution for future applicability

COMPUTER PROBLEM-SOLVING PROCESS:

find more resources at oneclass.com

find more resources at oneclass.com

###### You're Reading a Preview

Unlock to view full version