8 | 5 | 3 | 17 | 15 | 10 | 32 | 23 | 18 | 53 | 43 | 37 | 82 | 72 | 63 | …… |
Private Sub Command1_Click()
Const n = 15
Dim a(1 To n) As Integer, search As Integer, key As Integer
Dim i As Integer, j As Integer, m As Integer
'读取一组正整数,按上述规则存入数组a中,代码略。
key = Val(Text1.Text)
i = 1: j = n: search = 0
Do While i <= j
m = (i + j) \ 2
If m Mod 3 <> 0 Then '(1) 把m调整到三个一组的最后一个数的位置
If key = a(m) Then
search = m : Exit Do
ElseIf key < a(m) Then
j = m - 3
ElseIf Then '(2)
i = m + 1
ElseIf key = a(m - 2) Then
search = m - 2 : Exit Do
ElseIf key = a(m - 1) Then
search = m - 1 : Exit Do
Else
search = 0 : Exit Do
End If
Loop
If search <> 0 Then
Text2.Text = Str(search)
Else
Text2.Text = "找不到"
End If
End Sub
加框处代码应修改为:(1)_____________ (2)______________
同类型试题
y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2
y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2