2016年12月19日 星期一

函式


  • 內建數值函數

        Dim ans As String = ""
        ans &= "Math.Abs(2)=" & Math.Abs(2) & vbNewLine
        ans &= "Math.Abs(-2)=" & Math.Abs(-2) & vbNewLine
        ans &= "Cint(2.5)=" & CInt(2.5) & vbNewLine
        ans &= "Cint(-2.5)=" & CInt(-2.5) & vbNewLine
        ans &= "Cint(-2.51)=" & CInt(-2.51) & vbNewLine
        ans &= "Cint(3.5)=" & CInt(3.5) & vbNewLine
        ans &= "Cint(-3.5)=" & CInt(-3.5) & vbNewLine
        ans &= "Int(2.4)=" & Int(2.4) & vbNewLine
        ans &= "Int(-2.4)=" & Int(-2.4) & vbNewLine
        ans &= "Fix(2.4)=" & Fix(2.4) & vbNewLine
        ans &= "Fix(-2.4)=" & Fix(-2.4) & vbNewLine
        ans &= "Math.Round(5/3,2)=" & Math.Round(5 / 3, 2) & vbNewLine
        ans &= "Math.Round(1.665,2)=" & Math.Round(1.665, 2) & vbNewLine
        ans &= "Math.Ceiling(7.03)=" & Math.Ceiling(7.03) & vbNewLine
        ans &= "Math.Ceiling(-7.03)=" & Math.Ceiling(-7.03) & vbNewLine
        ans &= "Math.Floor(7.03)=" & Math.Floor(7.03) & vbNewLine
        ans &= "Math.Floor(-7.03)=" & Math.Floor(-7.03) & vbNewLine
        ans &= "Math.Truncate(7.03)=" & Math.Truncate(7.03) & vbNewLine
        ans &= "Math.Truncate(-7.03)=" & Math.Truncate(-7.03) & vbNewLine
        ans &= "Int(Rnd()*10)+5=" & Int(Rnd() * 10) + 5 & vbNewLine
        ans &= "Math.Sqrt(4)=" & Math.Sqrt(4) & vbNewLine
        ans &= "Math.Sign(4)=" & Math.Sign(4) & vbNewLine
        ans &= "Math.Sign(0)=" & Math.Sign(0) & vbNewLine
        ans &= "Math.Sign(-4)=" & Math.Sign(-4) & vbNewLine
        ans &= "Math.Log(2)/Math.Log(10)=" & Math.Log(2) / Math.Log(10) & vbNewLine
        ans &= "Math.Exp(1)=" & Math.Exp(1) & vbNewLine
        ans &= "Math.Pow(2,10)=" & Math.Pow(2, 10) & vbNewLine
        ans &= "Math.Max(2,3)=" & Math.Max(2, 3) & vbNewLine
        ans &= "Math.Min(2,3)=" & Math.Min(2, 3) & vbNewLine
        ans &= "Math.PI=" & Math.PI & vbNewLine
        ans &= "Math.E=" & Math.E & vbNewLine
        Dim data(10, 3) As Integer
        ans &= "UBound(Data)=" & UBound(data) & vbNewLine
        ans &= "UBound(Data, 2)=" & UBound(data, 2) & vbNewLine
        ans &= "LBound(data)=" & LBound(data) & vbNewLine
        ans &= "LBound(data, 2)=" & LBound(data, 2) & vbNewLine
        Dim PI = 3.14159265358979
        ans &= "Math.Sin(PI / 6)=" & Math.Sin(PI / 6) & vbNewLine
        Me.TextBox1.Text = ans
    End Sub




  • 內建字串函數

        Dim ans As String = ""
        ans &= "Chr(65)=" & Chr(65) & vbNewLine
        ans &= "Asc(A)=" & Asc("A") & vbNewLine
        ans &= "Asc(A)=" & Hex(Asc("王")) & vbNewLine
        ans &= "ChrW(65)=" & ChrW(65) & vbNewLine
        ans &= "AscW(A)=" & AscW("A") & vbNewLine
        ans &= "Hex(16)=" & Hex(16) & vbNewLine
        ans &= "Oct(16)=" & Oct(16) & vbNewLine
        ans &= "Val(123)=" & Val("123") & vbNewLine
        ans &= "Val(52A)=" & Val("52A") & vbNewLine
        ans &= "Val(xxx)=" & Val("xxx") & vbNewLine
        ans &= "Str(23)=" & Str("23") & vbNewLine
        ans &= "Len(ABCDE)=" & Len("ABCDE") & vbNewLine
        ans &= "Left(ABCDE,2)" & Strings.Left("ABCDE", 2) & vbNewLine
        ans &= "Right(ABCDE,2)" & Strings.Right("ABCDE", 2) & vbNewLine
        ans &= "Mid(ABCDE,2,3)=" & Mid("ABCDE", 2, 3) & vbNewLine
        ans &= "UCase(AbcDe)=" & UCase("AbcDe") & vbNewLine
        ans &= "LCase(AbcDe)=" & LCase("AbcDe") & vbNewLine
        ans &= "Trim(  A B  )=" & Trim("  A B  ") & vbNewLine
        ans &= "LTrim(  A B  )=" & LTrim("  A B  ") & vbNewLine
        ans &= "RTrim(  A B  )=" & RTrim("  A B  ") & vbNewLine
        Dim data(10, 3) As Integer
        ans &= "UBound(data)=" & UBound(data) & vbNewLine
        ans &= "UBound(data,2)=" & UBound(data, 2) & vbNewLine
        ans &= "LBound(data)=" & LBound(data) & vbNewLine
        ans &= "LBound(data,2)=" & LBound(data, 2) & vbNewLine
        Dim PI = 3.14159265358979
        ans &= "Math.Sin(PI / 6)=" & Math.Sin(PI / 6) & vbNewLine
        ans &= "StrDup(4,65)=" & StrDup(4, "65") & vbNewLine
        ans &= "StrReverse(ABCDE)=" & StrReverse("ABCDE") & vbNewLine
        ans &= "RSet(2.3,5)=" & RSet(2.3, 5) & vbNewLine
        ans &= "LSet(2.3,5)=" & LSet(2.3, 5) & vbNewLine
        ans &= "InStr(ABCDABCD,D)=" & InStr("ABCDABCD", "D") & vbNewLine
        ans &= "InStr(ABCDEF,CC)=" & InStr("ABCDEF", "CC") & vbNewLine
        ans &= "InStr(6,ABCDABCD,D)=" & InStr(6, "ABCDABCD", "D") & vbNewLine
        ans &= "InStr(6,ABCDABCD,Ab)=" & InStr(6, "ABCDABCD", "Ab") & vbNewLine
        ans &= "InStrRev(ABCDABCD,D)=" & InStrRev("ABCDABCD", "D") & vbNewLine
        ans &= "InStrRev(ABCDABCD,D,7)=" & InStrRev("ABCDABCD", "D", 7) & vbNewLine
        ans &= "Replace(ABCDE,BCD,xxx)=" & Replace("ABCDE", "BCD", "xxx") & vbNewLine
        Me.TextBox2.Text = ans
    End Sub

12/9 訂正

sumEven

'Q1:sumEven(n) 己知正整數 n,求 2+4+6..+ n 之和'偶數
Dim n As Integer
n = InputBox("n=", "Q1:sumEven(n) 己知正整數 n,求 1+3+5..+ n 之和", 1)
n = If(n Mod 2 = 1, n - 1, n)
Me.TextBox3.Text = sumEven(n)
模組  
'Q1:sumEven(n) 己知正整數 n,求 2+4+6..+ n 之和
'偶數

 Function sumEven(n)
        If n <= 2 Then
              Return n
        Else
              Return sumEven(n - 2) + n
        End If
End Function
最小公倍數lcm
       '輸入
        Dim a, b As Integer
        a = InputBox("輸入一個正整數A", "求出「最小公倍數」", 0)
        b = InputBox("輸入一個正整數B", "求出「最小公倍數」", 0)
        '處理
        Dim ans As String = ""
        ans = lcm(a, b)
        '輸出
        Me.TextBox4.Text = ans
模組 
'GCD(a, b) 求A 及B 之最大公因數
Function GCD(a, b)
     If b = 0 Then
          Return a
     Else
          Return GCD(b, a Mod b)
     End If
End Function 
'lcm(a, b) 求A 及B 之最小公倍數
'a * b = lcm(a, b) * GCD(a, b)

Function lcm(a, b)
      Return a * b / GCD(a, b)
End Function

2016年11月11日 星期五

程式設計一 上機小考1 訂正

程式設計一 上機小考1 訂正

Q3. 不換行在螢幕上印出 -19  -28  -37 . . .  -73  -82  (限用 For Next)

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        'Q3. 不換行在螢幕上印出 -19  -28  -37 . . .  -73  -82  (限用 For Next)
        Dim ans As String = ""
        For i = -19 To -82 Step -9
            ans &= i & "  "
        Next
        Me.TextBox1.Text = ans
    End Sub


2016年11月10日 星期四

偶數卷

偶數卷

  • B1 求 1^2 + 3^2 + 5^2 ...+ 99^2
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        'B1 求 1^2 + 3^2 + 5^2 ...+ 99^2
        Dim ans As Integer
        For i = 1 To 99
            ans += If(i Mod 2 = 1, i, 0) ^ 2
        Next
        Me.TextBox1.Text = ans
    End Sub


  • B2 輸入 a , b , c 三個邊長,若能夠成三角形,則印出計算此三角形面積;否則印出 " 非三角形 "。

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        'B2 輸入 a , b , c 三個邊長,若能夠成三角形,則印出計算此三角形面積;否則印出 " 非三角形 "。
        Dim a, b, c As Single
        Dim ans As String
        a = InputBox("a=", "", 0)
        b = InputBox("b=", "", 0)
        c = InputBox("c=", "", 0)
        Dim s = (a + b + c) / 2
        If a + b > c And a + c > b And b + c > a Then
            ans = (s * (s - a) * (s - b) * (s - c)) ^ 0.5
        Else
            ans = "非三角形"
        End If
        Me.TextBox2.Text = ans
    End Sub
               

  • B3 限用Do while...Loop結構,由外部讀入整數數字,列印從1開始直到該數字為止之直角三角形
    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        'B3 限用Do while...Loop結構,由外部讀入整數數字,列印從1開始直到該數字為止之直角三角形。
        Dim ans As String
        Dim n As Integer
        n = InputBox("n=", "", 0)
        Dim j = 1
        Do While j <= n
            Dim i = 1
            Do While i <= j
                ans &= i
                i += 1
            Loop
            ans &= vbNewLine
            j += 1
        Loop
        Me.TextBox3.Text = ans
    End Sub
  • B4 輸入整數a,b,c 求一元二次方程式AX^2+BX+C的解。(有相異實根、重根、相異虛根)限用select case
    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        'B4 輸入整數a,b,c 求一元二次方程式AX^2+BX+C的解。(有相異實根、重根、相異虛根)限用select case
        Dim ans As String
        Dim a, b, c As Integer
        a = InputBox("a=", "", 0)
        b = InputBox("b=", "", 0)
        c = InputBox("c=", "", 0)
        Select Case b ^ 2 - 4 * a * c
            Case Is > 0
                ans = "有相異實根" & -b + (b ^ 2 - 4 * a * c) ^ 0.5 / (2 * a) & "  " & -b - (b ^ 2 - 4 * a * c) ^ 0.5 / (2 * a)
            Case Is < 0
                ans = "有相異虛根"
            Case Else
                ans = "有重根" & -b / (2 * a)
        End Select
        Me.TextBox4.Text = ans
    End Sub
  • B5 輸入 0 到 100 之間的成績 s ,印出 優 甲 乙 丙 丁 五等第。限用 if 結構
    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
        'B5 輸入 0 到 100 之間的成績 s ,印出 優 甲 乙 丙 丁 五等第。限用 if 結構
        Dim ans As String
        Dim s As Single
        s = InputBox("s=", "", 0)
        If s <= 100 And s >= 90 Then
            ans = "優"
        ElseIf s < 90 And s >= 80 Then
            ans = "甲"
        ElseIf s < 80 And s >= 70 Then
            ans = "乙"
        ElseIf s < 70 And s >= 60 Then
            ans = "丙"
        Else
            ans = "丁"
        End If
        Me.TextBox5.Text = ans
    End Sub
  • B6 不換行輸出 -2.5  -2  -1.5  -1  ...  2  2.5 。 限用 Do...Loop while
    Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
        'B6 不換行輸出 -2.5  -2  -1.5  -1  ...  2  2.5 。 限用 Do...Loop while
        Dim ans As String = ""
        Dim i = -2.5
        Do
            ans &= i & "  "
            i += 0.5
        Loop While i <= 2.5
        Me.TextBox6.Text = ans
    End Sub

2016年11月9日 星期三

單元:ch04. 迴圈陳述式

單元:ch04. 迴圈陳述式

  • 我知道 For ...next 結構

For 迴圈變數 = 初值 To 終值 Step 增量 
Next 迴圈變數 

  • 我會計算 for...next 迴圈的執行次數
【( 終值-初值) / 增量】+ 1

  • 印出 5 10 15 ... 50
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        '印出 5 10 15 ... 50
        Dim ans As String = ""
        For i = 5 To 50 Step 5
            ans &= i & " "
        Next
        Me.TextBox1.Text = ans
    End Sub


  • 印出 20 16 12 ...-12 -16
 Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        '印出 20 16 12 ...-12 -16
        Dim ans As String = ""
        For i = 20 To -16 Step -4
            ans &= i & " "
        Next
        Me.TextBox2.Text = ans
    End Sub


  • 我知道 do while....loop 結構
Do while 條件
      程式區塊
Loop 

  • 我知道 do until....loop 結構

Do until 條件
      程式區塊
Loop 

  • 我知道 do ...loop while 結構
Do 
      程式區塊
Loop while 條件

  • 我知道 do...loop until 結構

Do 
      程式區塊
Loop until 條件

  • 如何將 For...Next 改成 Do While...Loop 或 Do...Loop While?

For i = 初值 To 終值 Step 增量  ==>  Dim  i  = 初值
                                                              Do While  i <= 終值
Next                                             ==>        i += 增量
                                                              Loop
實例:
For x = 20 To -16 Step -4   ==>Dim x = 20  
                                                  Do While x <= -16
    ans &= x & " "           ==>         ans &= x & " "
Next                              ==>         x -= 4
                                                  Loop
Msgbox (ans)               ==>      MsgBox(ans)

  • 印出九九乘法表。(三種不同樣式)





2016年11月3日 星期四

10/28 隨堂練習訂正

10/28 隨堂練習訂正

  •  'p27 輸入正整數 n,求(1-1/2)(1-1/3)(1-1/4)...(1-1/n) =
  •     Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click
            'p27 輸入正整數 n,求(1-1/2)(1-1/3)(1-1/4)...(1-1/n) =
            Dim ans As Single
            Dim n As Integer
            n = InputBox("n=", "p27 輸入正整數 n,求(1-1/2)(1-1/3)(1-1/4)...(1-1/n) =", 4)
            ans = 1
            For i = 2 To n
                ans *= 1 - 1 / i
            Next
            Me.TextBox17.Text = ans
        End Sub 


    2016年10月22日 星期六

    10/14 隨堂練習 訂正


    10/14 隨堂練習 訂正

    • 成績等第判斷:操行成績0-100分成五等第 select case

    Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
            '成績等第判斷:操行成績0-100分成五等第 select case
            'g = 成績
            Dim g As Single
            Dim ans As String = "" '答案
            g = InputBox("成績=", "成績等第判斷:操行成績0-100分成五等第", 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.TextBox8.Text = g & "分," & ans
        End Sub

    單元: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



    2016年10月1日 星期六

    單元:ch01. 第一個程式、ch02. 資料的基本概念



    單元:ch01. 第一個程式、ch02. 資料的基本概念

    • 主控台應用程式用到的輸出方法有:

     Console.WriteLine ("顯示文字") 不換行輸出   
     Console.Write ("顯示文字") 換行輸出

    • 主控台應用程式用到的輸入方法有:

    變數=Console.ReadLine()   換行輸入字串
    變數=Console.Read()   不換行輸入字元

    • 寫出 VB 運算子的優先順序(由上到下代表高到低) 
    算術運算子>關係運算子>邏輯運算子
    1. (  )  (括號) 
    2.  ^  (指數運算子)
    3.  +  (正數)、-  (負數)
    4. *  (乘)、/  (除) 
    5.  \  (整數除法)
    6. Mod  (取餘數) 
    7.  +  (加)、-  (減)
    8.  &  (連接)
    9.  =<><><=>=LikeIsIsNotTypeOf...Is...  (關係運算子)
    10.  Not  (邏輯運算子)
    11. AndAndAlso  (邏輯運算子)
    12. OrOrElse  (邏輯運算子)
    13.  Xor  (邏輯運算子)
    14.  =+=-=*=/=^=

    • 只用一條程式碼,印出上機練習題 1 的結果。

                     (字串串接及程式碼換行排版練習)

            Console.WriteLine("====Console.WriteLine練習====" & vbCrLf & "班級: 資應一甲" & vbCrLf & "班級: 資應一甲" & vbCrLf & "學號:1110534018" & vbCrLf & "姓名:廖珮榕" & vbCrLf & "=========================")




    • 不恰當的資料型態宣告,會影響到結果的正確性。請參考 [ch02.資料的基本概念投影片] pp. 15-16 試寫一程式來印出各數值型別之表示範圍,並和課本比較是否有異。 

     Dim ans As String = "" '答案字串
            ans = "型態" & vbTab & "byte" & vbTab & "範圍" & vbNewLine
            ans &= "SBtye" & vbTab & "1" & vbTab & SByte.MinValue & "~" & SByte.MaxValue & vbNewLine
            ans &= "Btye" & vbTab & "1" & vbTab & Byte.MinValue & "~" & Byte.MaxValue & vbNewLine
            ans &= "Short" & vbTab & "2" & vbTab & Short.MinValue & "~" & Short.MaxValue & vbNewLine
            ans &= "UShort" & vbTab & "2" & vbTab & UShort.MinValue & "~" & UShort.MaxValue & vbNewLine
            ans &= "Integer" & vbTab & "4" & vbTab & Integer.MinValue & "~" & Integer.MaxValue & vbNewLine
            ans &= "UInteger" & vbTab & "4" & vbTab & UInteger.MinValue & "~" & UInteger.MaxValue & vbNewLine
            ans &= "Long" & vbTab & "8" & vbTab & Long.MinValue & "~" & Long.MaxValue & vbNewLine
            ans &= "ULong" & vbTab & "8" & vbTab & ULong.MinValue & "~" & ULong.MaxValue & vbNewLine
            ans &= "Single" & vbTab & "4" & vbTab & Single.MinValue & "~" & Single.MaxValue & vbNewLine
            ans &= "Double" & vbTab & "8" & vbTab & Double.MinValue & "~" & Double.MaxValue & vbNewLine
            ans &= "Decimal" & vbTab & "12" & vbTab & Decimal.MinValue & "~" & Decimal.MaxValue & vbNewLine

            MsgBox(ans)




    • 請各位寫一個文字模式的程式,導引使用者輸入數值 x,數值 y,展示此二數的各項算 術運算 ^ * / \ mod + - 結果

    (專案檔名: ch03-ConsoleIO-xxxxxxx)

    Module Module1

        Sub Main()
            Console.WriteLine("輸入數值 x,數值 y,展示此二數的各項算術運算 ^ * / \ mod + - 結果")
            '輸入數值 x,數值 y,
            Dim x, y As Single
            Console.Write("x=")
            x = Console.ReadLine
            Console.Write("y=")
            y = Console.ReadLine
            '展示此二數的各項算術運算 ^ * / \ mod + - 結果
            'Console.WriteLine("{0}^{1}={2}", x, y, x ^ y)
            Console.WriteLine(x & " ^ " & y & " = " & x ^ y)
            Console.WriteLine(x & " * " & y & " = " & x * y)
            Console.WriteLine(x & " / " & y & " = " & x / y)
            Console.WriteLine(x & " \ " & y & " = " & x \ y)
            Console.WriteLine(x & " mod " & y & " = " & x Mod y)
            Console.WriteLine(x & " + " & y & " = " & x + y)
            Console.WriteLine(x & " - " & y & " = " & x - y)

        End Sub

    End Module



    • 輸入半徑 r , 印出此圓之「圓周長」及「圓面積」。 (專案檔名: ch03-ConsoleCircle-xxxxxxx-prj, 請用常數來定義圓周率 pi=3.14159265)

    Public Class Form1

        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            '輸入半徑 r , 印出此圓之「圓周長」及「圓面積」。
            Dim ans As String = "" '答案
            Const pi = 3.1415926
            '輸入半徑 r
            Dim r As Single
            r = InputBox("半徑r=","輸入半徑 r , 印出此圓之「圓周長」及「圓面積」。 ",0)
            '印出此圓之「圓周長」
            ans &= "圓周長=" & 2 * pi * r & vbNewLine
            '及「圓面積」。
            ans &= "圓面積=" & pi * r ^ 2 & vbNewLine

            MsgBox(ans, , "結果")
        End Sub
    End Class