1 / 32

# ENGR 112 - PowerPoint PPT Presentation

ENGR 112. Decision Structures. Control Structures. Sequence structures Built into Visual Basic Selection structures If/Then  Single selection If/Then/Else  Double selection Select Case  Multiple selection. Control Structures. Repetition structures For/Next Do/While Loop.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about ' ENGR 112' - walda

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### ENGR 112

Decision Structures

• Sequence structures

• Built into Visual Basic

• Selection structures

• If/Then  Single selection

• If/Then/Else  Double selection

• Select Case  Multiple selection

• Repetition structures

• For/Next

• Do/While Loop

### Selection Structures

Statements in Else Clause

Statements in Then Clause

Selection Structure

NO

YES

• Allows us to execute one statement if TRUE and another if FALSE

If A=0 Then

msg = “ERROR...Division by ZERO”

MsgBox(msg)

Exit Sub

Else

C = B/A

End If

• To determine if user has entered a string in the from of a date

If IsDate(variable) Then

‘do what you want with the date

Else

‘provide a message to the user

End If

Dim DT

Private Sub Command1_Click()

DT = Text1.Text

If IsDate(DT) Then

MsgBox "Good Job"

Else

MsgBox "please enter the text in the form of a date"

End If

End Sub

• To determine if variable can be converted to a number

If IsNumeric(variable) Then

‘do what you want with the number

Else

‘provide a message to the user

End If

Dim NT

Private Sub Command2_Click()

NT = Text2.Text

If IsNumeric(NT) Then

MsgBox "Good Job"

Else

End If

End Sub

• Nested conditional statements

If A = 0 Then

value = “x”

Else

If A=1 Then

value = “y”

Else

If A=2 Then

value = “z”

End If

End If

End If

• Practical when more than three levels of if/Then/Else are necessary

Select Case inputNumber

Case 0

value = “x”

Case 1

value = “y”

Case 2

value = “z”

Case 3

value = “Null”

End Select

• Design a program to compute grades based on the average of 4 exams

• If the average is 90 or higher, the student gets an “A”

• If the average is 80 – 89, the student gets a “B”

• Etc.

Else If Grade >= 80 Then

Else If Grade >= 70 Then

etc

Case is >= 90

Case is >= 80

Case is >= 70

Etc.

### Determinant Loops

Increments counter

For/Next Statement

• Also known as a For … Next loop

• Allows repetition of statements

• Syntax

For CounterVar = StartNum to EndNum [Step StepNum]

VB Statements

Next CounterVar

Increment counter variable

Body of Loop

Move to statements after loop

Is counter value greater than ending value?

Determinate Structure

YES

NO

• Counter increments by 1 unless otherwise specified

• VB keyword Step is used to increment by a number other than 1 (including negative numbers)

• Can be terminated prematurely with keywords Exit For

• Examples

Answ = 0

For X=1 To 10

Answ = Answ + X

Next X

Answ = 0

For X=1 To 10 Step 2

Answ = Answ + X

If X > 10 Then Exit For

Next X

E

E

### Indeterminate Loop

• Conditional loops are executed as long or until a condition exists

• Their key feature is the condition

• The condition can be

• A Boolean variable (True or False)

• Value of a property

• Expression (NumVal < 15)

Move to statements after loop

Body of Loop

Is conditionmet?

Indeterminate Structure 1

Test at End of Loop

YES

NO

Do

Loop Until password = “Vanilla orange”

Move to statements after loop

Body of Loop

Is conditionmet?

Indeterminate Structure 2

Test at Beginning of Loop

YES

NO

Dim entry

Dim NameCount As Integer

Private Sub Command1_Click()

NameCount = 0

entry = InputBox("Enter name")

Do Until entry = "zzz"

NameCount = NameCount + 1

entry = InputBox("Enter name")

Loop

Print "The total number of names is "; NameCount

End Sub

Equivalent

Do While Loop

Do

Loop Until variablename <> “”

Do

Loop While variablename = “”

Do

Loop Until variablename > 5

Do

Loop While variablename <= 5

Condition being

affected

Do...While/Loop Statement

• Example

X = 10

Do While X > 0

Ht = (60 + 2.13) * X^4

Print Ht ‘Ht=Height of Rocket

X = X - 1

Loop

• What’s the problem with this loop?

Dim i As Integer

Do While i = 0

i = 0

Loop

• What’s the problem with this loop?

Private Sub CmdDisplay_Click()

Dim x As Single

x = 1

Do While x > 0

x = x + 1

PicOutput.Print x

Loop

End Sub

• What’s the problem with this loop?

Private Sub CmdDisplay_Click()

Dim m As Single

For m = 1 To 20.5 Step – 1

PicOutput.Print m

Next m

End Sub