Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Lecture 7 – Decision & Conditions Decisions 決定 +Relational and Logical Operators +If 假如, 如果.

Similar presentations


Presentation on theme: "1 Lecture 7 – Decision & Conditions Decisions 決定 +Relational and Logical Operators +If 假如, 如果."— Presentation transcript:

1 1 Lecture 7 – Decision & Conditions Decisions 決定 +Relational and Logical Operators +If 假如, 如果

2 Naming Rules: Name Property How the programmer refers to a control in code Name must begin with a letter Must be less than __________long May include numbers and the underscore () Use appropriate __character naming _______ e.g. txtName, lblName

3 IntelliSense 編碼輔助 Automatically 自動 pops up to give the programmer help. Intellisense anticipates 預測 your needs 需要 during coding and displays prompts 提示 to assist 幫助 you in coding

4 Revision Exercise: Control Which control will you use to display your name? ____________ Which control will you use to get user’s click action? ____________ Which control will you use for user to choose the kinds of fruit he/she likes, e.g. apple, banana, orange? ____________

5 Revision Exercise: Concatenation Write code to join the texts so that txtResult will look like as below? PeterChan txtFirstName txtLastName txtResult My Name is Peter Chan. txtResult txtResult.text = “My Name is ”

6 Revision Exercise: Symbol Which symbol can be used to enclose a text string in code, e.g. “Hello World” and then assign it to a textbox? ____________ Which symbol can be used to write a non-executable comment? ____________ Which symbol will you use to break a long statement into different lines? ____________

7 Revision Exercise: Code 1. Write code to assign “Peter” into a textbox? txtName Peter = txtName 2. Write code to end a program? 3. Write code to reset the insertion point in a textbox?

8 8 Relational and Logical Operators Result 結果 of the condition is Boolean –True or False. Room = TrueORRoom = False Condition is an expression 詞句 Example: If the room is cold, I will bring more clothes. 假如我愛她, 我會給她一束鮮花﹒ Condition 條件 Decisions 決定

9 9 Relational Operators in VB.Net <less than <=less than or equal to >greater than >=greater than or equal to =equal to <>not equal to

10 10 Example When a = 3, b = 4 (a + b) < 2 * a 3 + 4 = 7 2 * 3 = 6 7 is NOT less than 6 and the result of the expression is False

11 11 Another Example a = 4 b = 3 c = "hello" d = "bye“ ( c.Length – b ) = ( a / 2 ) 5 – 3 = 24 / 2 = 2 True because 2 equals 2 字串 “c” 的長度

12 12 Comparison Tips Negative numbers (e.g. -1,-2) are always less than positive numbers (e.g. 1,2,3) Strings can be compared also (don't forget to enclose the strings in quotes) see Page 150 for ASCII Chart) JOAN is less than JOHN HOPE is less than HOPELESS Joan does not equal JOAN Numbers are always less than letters 300ZX is less than Porsche

13 13 Relational Operator Notes Result of a relational expression will always be Boolean (True/False) They are evaluated from left to right

14 14 Logical Operators (1) Used for joining 連接 Boolean expressions Example: If the room is cold AND I have clothes, I will more enjoy the lesson. Boolean expressions / Conditions Decisions 決定 假如我愛她而且她也喜歡我, 我們可以快快樂樂一起 …

15 15 Logical Operators (2) And – will result a True if and only if both expressions are True ABOutput TT TF FT FF AND Gate: Truth Table If the room is cold AND I have clothes, I will more enjoy the lesson. T/F?

16 16 Logical Operators (3) Or – will result a True if one or the other or both expressions are True ABOutput TT TF FT FF OR Gate: Truth Table If today is holiday OR today is weekend, I will be happy. T/F? 愛情不是遊戲, 幸福怎能單靠一方的愛

17 17 Logical Operators (4) Not – makes a False condition True and a True condition False AOutput T F NOT Gate: Truth Table If it is not raining, I will not bring umbrella. T/F?

18 18 Example Let n falls between 2 and 5: (2 < n ) And ( n < 5 ) A complete relational expression must be on either side of the logical operators And and Or.

19 19 Syntax error The following is NOT a valid way to test if n falls between 2 and 5: Invalid: (2 < n < 5 ) Valid:2 < n AND n < 5

20 20 Exercise n = 4, answ = “Y” Are the following conditions true or false? Not (n < 6) (answ = "Y") Or (answ = "y") (answ = "Y") And (answ = "y") Not(answ = "y") True/False

21 21 Order of Operations The order of operations for evaluating Boolean expressions is: 1.Arithmetic operators +,-,*,/ 2.Relational operators,>=,=,<> 3.Logical operators AND,OR,NOT

22 22 Logical Order of Operations 1. Not 2. And 3. Or

23 23 Exercise Determine whether the following conditions are true or false. Let a = 2, b = 3 1.(5 – a) * b < 7 2.NOT (a < b) 3.(a * a < b) OR NOT (a * a < a) True/False

24 24 Common Error in Boolean Expressions A common error is to replace the condition Not ( 2 < n ) by the condition ( 2 > n ) The correct replacement is ( 2 >= n ) Because >= is the opposite of Let n falls between 3 and 5:

25 25 Exercise Determine whether the following conditions are true or false. Let a = 2, b = 3 1.“Inspector” < “gadget” 2.a <> b 3.((a=b) OR NOT (b < a)) AND ((a < b) OR (b = a + 1)) True/False

26 26 If …Then…Else Used to make decisions Always indent 縮排 for readability Then must be on same line as If End If and Else must appear alone on a line Notice that End If is 2 words Always End with End If

27 27 If Block The program will take a course of action based on whether a condition is true. If condition Then action1 Else action2 End If Will be executed if condition is true Will be executed if condition is false

28 28 Another example If block If condition Then action1 End If Statement2 Statement3 Regardless of whether the condition in the If statement is True or False, these statements will be executed

29 Exercise: Find the larger number (1) This application is used to find the bigger number. After you have entered 2 numbers into the first two textboxes and have clicked the button, the bigger number will then be displayed in the last textbox. In VS.NET 2003, which area should I double click and put the code inside? 1 3 2 4 6 5

30 Exercise: Find the larger number (2) In VS.NET 2003, which area should you put the code inside? 2 1 3 4 5 6 7 8 9 Line 4-123 Don’t change! Line 144 Line 3

31 Fill in the blanks: Hints: Label1, Label1.text, txtNum1, txtNum1.Text, txtNum2, txtNum2.Text, txtResult, txtResult.Text, num1, num2, largerNum, CInt, CDec, Interger, Double, Decimal, Date Dim num1, num2, largerNum As ____________ num1 = CDec(____________) num2 = CDec(txtNum2.Text) If num1 > num2 Then _________ = num1 Else largerNum = ______ End If txtResult.Text = _The larger number is " __ __________ Exercise: Find the larger number (3) txtNum1 txtNum2 txtResult

32 32 Answer: Find the larger number Dim num1, num2, largerNum As Decimal num1 = CDec(txtNum1.Text) num2 = CDec(txtNum2.Text) If num1 > num2 Then largerNum = num1 Else largerNum = num2 End If txtResult.Text = "The larger number is " & largerNum

33 Exercise: Determine what output will be displayed in the text box when the button is clicked. Private Sub btnDisplay_Click (…) Handles btnDisplay.Click Dim gpa As Double = 3.49 txtOutput.Clear() If gpa >=3.5 Then txtOutput.Text = “Good” End If txtOutput.Text = txtOutput.Text & “ Student” End Sub What is the output result of the text box?

34 34 Example: Find your grade (1) Dim mark As Integer mark = txtMath.Text If mark >= 85 And mark <= 100 Then txtResult.Text = "Distinction" End If If mark >= 40 And mark < 85 Then txtResult.Text = "Pass" End If If mark >= 0 And mark < 40 Then txtResult.Text = "Fail" End If Indentation Pass 85100 40 0

35 35 Nested Ifs Example: Find your grade (2) Dim mark As Integer mark = CInt(txtMath.Text) If mark >= 85 And mark <= 100 Then txtResult.Text = "Distinction" Else If mark >= 40 Then txtResult.Text = "Pass" Else txtResult.Text = "Fail" End If Indentation Pass 85100 40 0

36 36 Simplified Nested If Statement If cond1 Then If cond1 And cond2 Then If cond2 Then action action End If End If Nested If Less Confusing

37 37 Testing Radio Buttons & Check Boxes Place the IF code in the Click event for a Button, such as btnDisplay Private Sub btuDisplay_Click() If chkRed.Checked=True Then txtResult.ForeColor = ForeColor.Red End If End Sub

38 38 Compound Conditions Example # 1 If radMale.Checked = True And CInt(txtAge.Text) < 21 Then … ‘Will the program continue to run … End If Situation True/False radMale not checked txtAge greater than 21 radMale not checked, txtAge less than 21 radMale checked, txtAge 21 or greater radMale checked, txtAge less than 21

39 39 Compound Conditions Example # 2 If radJunior.Checked = True Or radSenior.Checked = True Then … ’Will the program continue to run … End If Situation True/False radJunior.Value=True radSenior.Value=True radJunior.Value=False, radSenior.Value=True radJunior.Value=True, radSenior.Value=False radJunior.Value=False, radSenior.Value=False

40 40 Comments When one If block is contained inside another If block, the structure is referred to as nested If blocks. Care should be taken to make If blocks easy to understand.


Download ppt "1 Lecture 7 – Decision & Conditions Decisions 決定 +Relational and Logical Operators +If 假如, 如果."

Similar presentations


Ads by Google