2016年10月22日 星期六

單元:ch03. 決策指令

單元:ch03. 決策指令

  • 視窗應用程式用到的輸出訊息盒 msgbox 語法是:
MsgBox(提示訊息, [樣式, 視窗標題])

  • 視窗應用程式用到的輸入輸入盒 inputbox 語法是:
InputBox(提示訊息, [標題文字, 預設值, 位置x, 位置y])

  • 可以用來加減乘除的叫數值,數值可分為整數浮點數。如果你需要讓使用者可以輸入整數,要寫出那 2 條指令?
Dim a As Integer
a = InputBox("", "", 0)

  • 同上。如果你需要讓使用者可以輸入浮點數,要寫出那 2 條指令?
 Dim b As Single
 b = InputBox("", "", 0)

  • 字串會用雙引號””框住,通常不會拿來+-*/,例如:姓名、電話、學號等。如果你需要讓使用者可以輸入字串,要寫出那 2 條指令?
 Dim c As String
 c = InputBox("", "", 0)

  • 我會使用 If...then...。例如:判断整數 A 是正數則印出「正數」

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        '判断整數 A 是正數則印出「正數」
        Dim a As Single
        Dim ans As String = "" '答案
        a = InputBox("a=", "判断整數 A 是正數則印出「正數」", 0)
        If a >= 0 Then
            ans = "正數"
        End If
        Me.TextBox2.Text = ans
    End Sub

  • 我會使用 If...then...else。例如:判断整數 A 是正數則印出「正數」否則印出「負數」

作法1:
  Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        '判断整數 A 是正數則印出「正數」否則印出「負數」
        Dim a As Single
        Dim ans As String = "" '答案
        a = InputBox("a=", "判断整數 A 是正數則印出「正數」否則印出「負數」", 0)
        If a >= 0 Then
            ans = "正數"
        Else
            ans = "負數"
        End If
        Me.TextBox3.Text = ans
    End Sub
作法2:
 Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        '判断整數 A 是正數則印出「正數」否則印出「負數」
        Dim a As Single
        Dim ans As String = "" '答案
        a = InputBox("a=", "判断整數 A 是正數則印出「正數」否則印出「負數」", 0)
        If a < 0 Then
            ans = "負數"
        Else
            ans = "正數"
        End If
        Me.TextBox4.Text = ans
    End Sub

  • 「成績等第判斷」使用巢狀 If...then...else...來完成。

Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
        '「成績等第判斷」使用巢狀 If...then...else...來完成。
        Dim g As Single 'g=成績
        Dim ans As String
        g = InputBox("成績=", "「成績等第判斷」使用巢狀 If...then...else...來完成。", 0)
        If g >= 90 Then
            ans = "優"
        ElseIf g >= 80 Then
            ans = "甲"
        ElseIf g >= 70 Then
            ans = "乙"
        ElseIf g >= 60 Then
            ans = "丙"
        Else
            ans = "丁"
        End If
        Me.TextBox5.Text = ans
    End Sub

  • 「成績等第判斷」使用 Select...case....來完成。

Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
        '「成績等第判斷」使用 Select...case....來完成。
        Dim g As Single 'g=成績
        Dim ans As String
        g = InputBox("成績=", "「成績等第判斷」使用 Select...case....來完成。", 0)
        Select Case g
            Case Is < 60
                ans = "丁"
            Case Is < 70
                ans = "丙"
            Case Is < 80
                ans = "乙"
            Case Is < 90
                ans = "甲"
            Case Else
                ans = "優"
        End Select
        Me.TextBox6.Text = ans
    End Sub

  • 輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。
作法1:

    Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
        '輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)
        Dim a, b, c As Single
        Dim ans As String
        a = InputBox("a=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        b = InputBox("b=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        c = InputBox("c=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        ans = If(a > b, If(a > c, a, c), If(b > c, b, c)) & "大"
        Me.TextBox7.Text = ans
    End Sub

作法2:

    Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
        '輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(2)
        Dim a, b, c As Single
        Dim ans As String
        a = InputBox("a=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        b = InputBox("b=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        c = InputBox("c=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        ans = If(a > c, If(a > b, a, b), If(b > c, b, c)) & "大"
        Me.TextBox8.Text = ans
    End Sub

作法3:

    Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click
        '輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(3)
        Dim a, b, c As Single
        Dim ans As String
        a = InputBox("a=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        b = InputBox("b=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        c = InputBox("c=", "輸入 A、B、C 三個數,輸出最大值。想出三種不同的結構來完成。(1)", 0)
        ans = If(c > b, If(a > c, a, c), If(b > a, b, a)) & "大"
        Me.TextBox9.Text = ans
    End Sub



沒有留言:

張貼留言