给定一个数组a,有n个元素(1≤n≤100),有以下两种操作:
操作1:在文本框中分别输入L、R、T(1≤L≤R≤n),对数组下标为L到R之内(包含L和R)的每个元素增加T(1≤T≤100)
操作2:在文本框中输入K(1≤K≤n),在标签中输出a(K)的值。
为了提高算法的效率,小明设计了如下算法,以n=10为例,如下表所示。
数组下标
| l
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| l0
|
元素的值
| 7
| l2
| 3
| 6
| 7
| 1l
| 8
| 24
| 9
| 5
|
①将n个元素依次分成

段(

表示对

石向下取整,每段的元素个数为

,若最后有不足

个元素,则自成一段。给每段设置一个标记,初始值都为0,如下表所示。
数组下标
| l
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
|
元素的值
| 7
| 12
| 3
| 6
| 7
| 1l
| 8
| 24
| 9
| 5
|
段编号
| 第l段
| 第2段
| 第3段
| 第4段
|
段标记值
| 0
| 0
| 0
| 0
|
②对于操作1,输入的L、R属于同一段,则直接对a(L to R)的每个元素加上T。如输入4,6,3,则第2段中的每个数加上3,操作后如下表所示。
数组下标
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
|
元素的值
| 7
| l2
| 3
| 9
| 10
| 14
| 8
| 24
| 9
| 5
|
段编号
| 第1段
| 第2段
| 第3段
| 第4段
|
段标记值
| 0
| 0
| 0
| 0
|
③对于操作1,若输入的L,R不属于同一段,则对元素a(L)所在段中从a(L)开始到该段最后一个元素为止的每个元素加上T,并对元素a(R)所在段中从该段第一个元素开始到a(R)为止的每个元素加上T,对a(L)元素所在段的下一段开始到a(R)元素所在段的前一段为止的每个段标记值增加T,这些段中的元素保持不变。如在上表的其础上再输入1,8,2,则第1段的3个数和第3段中的前2个数都加上2,第2段的段标记位增加2,如下表所示。
数组下标
| l
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| l0
|
元素的值
| 9
| 14
| 5
| 9
| l0
| l‘l
| 10
| 26
| 9
| 5
|
段编号
| 第1段
| 第2段
| 第3段
| 第4段
|
段标记位
| 0
| 2
| 0
| 0
|
④对于操作2,若输入K的值为5,则输出a(5)的值,a(5)的值为该数组元素的值+段标记值,即a(5)=12。程序运行界面如下。请回答下列问题:
(1)若数组元素为“3,2,6,8,7,9,3,4,7,9,6”,依次进行以下3次操作后第3段的标记值为__________

操作1:依次输入1,11,1
操作1:依次输入7,9,2
操作2:输入8
(2)请在划线处填入合适的代码。
Const n = 10
Dim a(1 To n) As Integer
Dim f(1 T on) As Integer 'f数组元素依次表示每段的标记值
Dim bk As Integer 'bk表示每段的元素个数
Function BL(x As Integer) As Integer 'BL函数返回数组元素a(x)的段编号
BL=________________
End Function
Private Sub Form_Load()
’读取数据,并存储到数组a中,代码略
bk=Int(Sgr(n))
End Sub
Private Sub Command1_Click()
Dim L As Integer,R As Integer,T As Integer,i As Integer
L=Val(Text1.Text):R=Val(Text2.Text):T=Val(Text3.Text)
If BL(L)=BL(R) Then
For i=L To R
a(i)=a(i)+T
Next i
EIse
For i=______________
a(i)= a(i)+T
Next i
For i=BL(L)+1 To BL(R)-1
f(i)= f(i)+T
Next i
For i=(BL(R)-1)* bk+1 To R
a(i)= a(i) +T
Next i
End If
End Sub
Private Sub Command2_Click()
Dim K As Integer
K=Val(Text4.Text)
Labe.15.Caption="经过一系列操作后.a("+Str(K)+ ")的值为:"+___________
End Sub