26
Decision Structures Chapter 4

Decision Structures

Embed Size (px)

DESCRIPTION

Decision Structures. Chapter 4. Chapter 4 Objectives. To understand: What values can be stored in a Boolean variable What sequence structures are and when used What decision structures are and when used The difference between dual-alternative and single-alternative decision structures - PowerPoint PPT Presentation

Citation preview

Page 1: Decision Structures

Decision StructuresChapter 4

Page 2: Decision Structures

Chapter 4 Objectives To understand:

o What values can be stored in a Boolean variableo What sequence structures are and when usedo What decision structures are and when usedo The difference between dual-alternative and

single-alternative decision structureso What nested instructions areo What relational operators are and how they are

used

4-2

Page 3: Decision Structures

Boolean Variables Boolean Variables hold only two values

o Trueo False

o Initial Value is usuallyset to be “TRUE”

What it looks like in variable definitions

4-3

4.1

Page 4: Decision Structures

Boolean Functions Boolean Functions return one value from the choice

ofo Trueo False

Also primitive functions that are Booleano User prompted to answer Yes (true) or No (false)

Ask the following question:

4-4

4.1

Page 5: Decision Structures

If/Else Decision Structure Used to check a condition and make a

decision If a Boolean condition is

o True then one set of instructions are executedo False then a different set is executed

All previous instructions have been consecutively executedo Oneo Aftero Theo Other

4-5

4.2

Page 6: Decision Structures

If/Else Flow Chart

• Used to check a condition and make a decision

Page 7: Decision Structures

Storyboard A storyboard design for this conditional statement is: BOTH actions will NOT be performed…only ONE can be!

The penguin falling or speaking are instructions that are conditionally executedo They do NOT always executeo Executed only under certain conditions

If the hole is wider than the penguinpenguin falls down the hole

Elsepenguin says “Drats!”

End If

TRUE

FALSE

Page 8: Decision Structures

Decision Structure

4-8

4.2

Penguin falls

down into the hole

Flowchart

Page 9: Decision Structures

If/Else Statement Location

4-9

4.2

If/Else Tile

Page 10: Decision Structures

Using If/Else Instruction

• Two empty “slots” in instructiono IF parto ELSE part

• Choose placeholder or true/false after dragging to location

• Replace placeholder with Boolean variable or a Boolean function

• Instructions tiles added to both the IF part and ELSE part

• More than one instruction can be added to both the IF and ELSE part

4-10

Empty If/Else instruction

4.2

Page 11: Decision Structures

Single-Alternative Decision Structures If/Else is a dual-alternative decision

structureo Two paths of execution

One following TRUE Other following FALSE

Single-alternative decision structures are similar to the dual-alternativeo The ELSE part is empty

4-11

4.2

Page 12: Decision Structures

Single-Alternative Decision Structures

4-12

Start

Penguin turns to

face hole

Hole

wider than

penguin?

End

Penguin walks to

center of hole

Penguin falls

into hole

4.2

T

F

Page 13: Decision Structures

Nested If/Else Instructions When an If/Else instruction is placed inside

another If/Else instruction The inner If/Else

executes only if the outer If/Else istrue

4-13

4.2

Page 14: Decision Structures

Nested If/Else Instructions

4-14

4.2

Start

Penguin faces hole

Within

2 meters

“Too Far!”

True

Hole wider?

“Drats!” Penguin walks

Penguin falls in

End

True

False

False

Page 15: Decision Structures

Relational Comparisons

Relational Operators are used to compare values and determine whether relationships exist Greater than Less than Equal to

Compare two values and determine how they relate to each other

Operator Meaning

= = Equal to

! = Not equal to

> Greater than

> = Greater than or equal to

< Less than

< = Less than or equal to

4-15

4.3

Page 16: Decision Structures

Relational Operators

Used to write your own comparison In If/Else and other tests

Operates on two pieces of data a and b

Alice uses “a” and “b” for placeholders• Drag the desired tile

and replace either the “a” or “b” with a value

4-16

4.3

Page 17: Decision Structures

Demonstration in Robot Example Concept illustrated

o Relational operations are defined using relational operators

Page 18: Decision Structures

Boolean Logic Can check for multiple conditions at one time with

Boolean logic Boolean logic operators are used to build an

expression composed of multiple conditionso And

Boolean: A and B: both must be true to be true In Alice: Both A and B

o Or Boolean: A or B: one or both must be true to be true In Alice: Either A or B, or both

o Not Inverses what you feed it

Example: if A = True then “not A” is False In Alice: not A

Page 19: Decision Structures

Boolean Logic in Functions

Choose World object Then choose functions

o Select desired Boolean functiono Drag to conditional instruction like If/Else Condition

Page 20: Decision Structures

Logical Operators

Tests more than true/false…can do complex testing!o Test two conditions

to see if they BOTH are true!

o Or ONLY one condition is true!

o Or NEITHER condition is true!

4-20

4.3

Page 21: Decision Structures

Example Can combine multiple conditions Example:

o Penguin within 2 meterso And circle is wider than penguin

Similar to nested If/Else but does not do what is in second Else statemento Penquin say “too far away“

4-21

Page 22: Decision Structures

Testing Value of Object’s Property Sometimes you might want to see what a

property of an object iso Coloro Opacityo isShowing

4-22

Page 23: Decision Structures

How to Testing Object’s Property Create an empty If/Else instruction Select object to test Click properties tab Drag desired property’s tile and drop onto

If/Else instruction’s condition Menu appears showing all comparisons to

performo Select desired comparison

Another menu appears allowing you to select value that you want to compare property too Ex: color property will give list of colors

4-23

Page 24: Decision Structures

Storyboard Frog and ladybug are in garden Ladybug says “Excuse me” Frog turns to face ladybug If ladybug’s color is red

o Frog says “EEK! Go away!” Else

o Frog says “Good Morning” Endif

4-24

Page 25: Decision Structures

Property Test Demonstration

4-25

Page 26: Decision Structures

Homework Read chapter 4 Answer questions in handout Do lab assignments after handing in

answered questions Due one week after assigned with 1 week

grace