精華區beta Visual_Basic 關於我們 聯絡資訊
※ 引述《felici (下一次會更好)》之銘言: : 我寫了一個查看輸入資料是否在先前輸入的資料內 : 但是他是一個一個從頭開始去檢查 : 如果我要改成對半去檢查,要怎麼改 : 可否給一個方向呢? : 我是初學者所以所學不多><" : 打擾了... 1.資料一定要先排序 2.先取資料陣列上限的中間值,例如4個,就取2 3.然後搜尋植跟比較陣列中元素2,比元素2,比大,就取最大值上限跟中間值的中間 ,否之取最小直跟中間的中間。 4.一直比較到找到為止,或是上限等於下限 : -------------------------------------------------------------------------- : Private Sub Command5_Click() : Dim X(3) As Integer : MsgBox "請由小到大輸入4個數字" : For i = 0 To 3 : X(i) = Val(InputBox("請輸入第" & i + 1 & "個數字")) : Print "你輸入的第" & i + 1 & "個數字" & X(i) : Next i : Do : n = InputBox("請輸入任何數字,查看是否在資料裡。輸入quit代表結束") : If n = "quit" Then Stop : p = 1 : For j = LBound(X) To UBound(X) : If n = X(j) Then Print "你輸入的數字" & n & "在第" & j + 1 & "份資料裡": p = 2 : Next j : If p = 1 Then Print "你輸入的數字" & n & "不在資料裡" : Loop : End Sub -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.225.130.61