cs 240 computer programming 1 flowcharts 1. algorithm 2 a step-by-step method for solving a problem...

36
CS 240 Computer Programming 1 Flowcharts 1

Upload: noe-roan

Post on 01-Apr-2015

223 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

1

CS 240Computer

Programming 1

Flowcharts

Page 2: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

2

Algorithm

a step-by-step method for solving a problem or doing a task.

An informal definition of an algorithm is:

Page 3: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

3

AlgorithmA step-by-step problem-solving procedure

An algorithm is a sequence of unambiguous instructions for solving a problem.

The number of steps of an algorithm will be countable and finite.

It is a sequence of instructions (or set of instructions) to make a program more readable; a process used to answer a question.

Page 4: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

4

How to understand the problem?

Define the problem

Analyze the problem

Develop an algorithm/method of solution

Write a computer program corresponding to the algorithm

Test and debug the program

Document the program (how it works and how to use it)

Page 5: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

5

Flowcharts

Tools

There are two commonly used tools to help to document program logic (the algorithm)

Pseudo code

Page 6: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

6

Flowchart

The production flowchart is a visual representation of the sequence of the program. It shows what comes first, second, third, etc

Definition

A flowchart indicates:The steps to be taken in order to solve a

problem.The order or the sequence of these steps.

Page 7: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

7

Flowchart Rules

1. Use only one start and one stop per flowchart, --that is, one way in and one way out of the flowchart.

2. The logic flow of the solution is displayed from top to bottom and from left to right.

3. Use the appropriate symbol for each type of operation.

4. Use arrows when moving to another part of the flowchart rather than lines.

5. Do not leave dead-ends--that is, a part of a question unanswered.

Page 8: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

8

SymbolsSymbol Description

   TERMINAL - To start or end a flowchart

 INPUT / OUTPUT - Used with Read, Input, Print and other I/O commands.

PROCESSING - Used for operations done inside the computer. Such as calculations, storing and moving of data.

DECISION - Used to ask a question in programming. Questions are Yes/No format (Used with the If Statement).

   

 DIRECTION FLOW - Used to connect symbols and to represent the direction of flow. Lines should not cross each other. Arrowheads should be placed at the end close to the symbol. 

Connector - or joining of two parts of program

Page 9: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

91.Simple sequential Flowchart

Construct a flow chart that prints "Hello, World"?

Example 1

Page 10: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

101.Simple sequential Flowchart

Step 1- Start

Algorithm

Step 2- Print "Hello, World"

Step 3- Stop

Page 11: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

111.Simple sequential Flowchart

Start

Print“Hello, World”

Stop

Flowchart

Page 12: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

121.Simple sequential Flowchart

Construct a flow chart that finds the sum of two numbers.

Example 2

Page 13: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

131.Simple sequential Flowchart

C: Sum (A+B)

Variables

B: Second Number

A: First Number

Step 3- Read B

Algorithm

Step 2- Read A

Step 1- Start

Step 4- Calculate C = A+BStep 5- Print CStep 6- Stop

Page 14: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

141.Simple sequential Flowchart

Flowchart Start

Read A

Read B

C= A+B

Print C

Stop

Page 15: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

151.Simple sequential Flowchart

Construct a flow chart that finds the sum, average and product of three numbers.

Example 3

Page 16: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

161.Simple sequential Flowchart

Z: Third Number

Variables

Y: Second Number

X: First Number

Step 3- Calculate S = X+Y+Z

Algorithm

Step 2- Read X, Y, Z

Step 1- Start

Step 4- Calculate A = S/3

Step 6- Print S, A, PStep 7- Stop

S: Sum (X+Y+Z)

A: Average (S/3)

P: Product (X*Y*Z)

Step 5- Calculate P = X*Y*Z

Page 17: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

171.Simple sequential Flowchart

Flowchart Start

Read X,Y,Z

S= X+Y+ZA=S/3

P=X*Y*Z

Print S,A,P

Stop

Page 18: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

181.Simple sequential Flowchart

Construct a flow chart that finds the difference and the division of two numbers and display the

result

Example 4

Page 19: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

191.Simple sequential Flowchart

D: Difference

Variables

N2 : Second Number

N1 : First Number

Step 3- Calculate D = N1-N2

Algorithm

Step 2- Read N1, N2

Step 1- Start

Step 4- Calculate V = N1/N2

Step 6- Stop

V: Division

Step 5- Print D,V

Page 20: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

201.Simple sequential Flowchart

Flowchart

Start

Read N1, N2

D= N1 –N2V=N1/N2

Print D,V

Stop

Page 21: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

211.Simple sequential Flowchart

Construct a flow chart that finds the circle area and circumference of a circle where R (radius) is given

Example 5 Exercise

Page 22: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

221.Simple sequential Flowchart

A: Area

Variables

PI: PI = 3.14

R : Radius

Step 3- Calculate A = PI*(R)2

Algorithm

Step 2- Read R

Step 1- Start

Step 4- Calculate C = 2*PI*R

Step 6- Stop

C: Circumference

Step 5- Print R, A, C

Page 23: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

23

2. Branched Flowcharts

Construct a flow chart for the following function

Example 1

F(x) = {

XX>=0-X X<0

Page 24: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

24

Variables

X : Number

Step 3- if X >=0 then F =X

Algorithm

Step 2- Read X

Step 1- Start

Step 4- if X <0 then F =-X

Step 6- Stop

Step 5- Print F

2. Branched Flowcharts

F: function of X

Page 25: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

25

Flowchart

2. Branched Flowcharts

Start

Read X

Print F

Stop

F=-X F=X

X>=0

YESNO

Page 26: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

26

2. Branched Flowcharts

Trace the following flowchart and write the output of it.

Example 2

1. When X = 20

2. When X = -10

Page 27: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

27

Flowchart

2. Branched FlowchartsStart

Read X

Print X,W

Stop

W=2*X-1

W=X+1

X?>00>

=0

W=SIN(X)+5

Page 28: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

28

Result

2. Branched Flowcharts

X= 20W= 21

When X=20

X= -10W= -21

When X=-10

Page 29: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

29

2. Branched Flowcharts

Draw a flowchart that shows the traffic light processing

Example 3 Exercise

Page 30: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

30

Variables

C : Traffic light color

Step 4- if C is RED then Print STOP

Algorithm

Step 2- Read C

Step 1- Start

Step 5- if C is YELLOW then Print WAIT

Step 7- Stop

Step 6- if C is GREEN then Print PASS

2. Branched Flowcharts

Step 3- make a Decision (what is c)

Page 31: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

31

Trace the following flowchart and write the output of it.

Example 1

3. Loop Flowcharts

Page 32: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

32

Flowchart

3. Loop Flowcharts

Start

Stop

N=N+3

While N>=7

F

T

N=1

Print N

Page 33: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

33

Result

3. Loop Flowcharts

N Loop1 1

4 2

7 3

Page 34: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

34

Trace the following flowchart and write the output of it.

Example 2

3. Loop Flowcharts

Page 35: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

35

Flowchart

3. Loop FlowchartsStart

Print avg

Stop

Sum= X + SumIncrement i

avg=Sum/10

While i<10

F

T

i=0Sum=0

Read X

Page 36: CS 240 Computer Programming 1 Flowcharts 1. Algorithm 2 a step-by-step method for solving a problem or doing a task. An informal definition of an algorithm

36

Result

3. Loop Flowcharts

Loop Read X Sum i

1 3 3 12 4 7 23 1 8 3

4 10 18 4

5 7 25 5

6 5 30 6

7 3 33 7

8 8 41 8

9 4 45 910 5 50 10

Avg =50/10 =5