学进去-教育应平等而普惠
试题
类型:操作题
难度系数:0.15
所属科目:高中信息技术
某影厅共 12 排,每排 10 座。座位编号以排号+座号来命名,如第 10 排 3 座,编号命名为 103。该影厅的最佳观影区为方框内的座位,即第 5 排 3 座~第 10 排 8 座的矩形位置。0 表示该座位可选,非 0 表示已售(1 表示系统推荐,2 表示手工选择)。
座位推荐算法:
1)只推荐最佳观影区的座位,从前往后,优先选择最中间的位置,若找到最中间位置,则推荐,否则继续寻找下一排,以此类推;
2)购票数为 1 时,推荐单个靠中间的位置,大于 1 时,只推荐连续的座位;
3)若在最佳观影区内未找到可以推荐的座位时,系统将提示手工选择。
编写 VB 程序,模拟电影院选座。在文本框 Text1 中输入购票数,单击“选座”按钮Command1,在标签 Label2 中显示机选座位。程序运行界面如图所示。

(1)该影厅空座情况不变如上图所示,若购票数由 2 改为 1,则推荐的座位编号为____
(2)实现上述功能的 VB 程序如下,请在划线处填写合适的代码。

Const C = 10: Const R = 12       '每排 10 座,共 12 排


Dim zw(1 To C * R) As Integer, kzw(1 To C * R) As Integer       '座位,空座位Private Sub Form_Load()
'读取影厅座位数据存入数组 zw,并将座位信息显示在列表框 List1 中,代码略End Sub
Private Sub Command1_Click()
Dim i As Integer, j As Integer, k As Integer
Dim x As Integer, min As Integer, start As Integer Dim m As Integer, n As Integer, ans As String
m = Val(Text1.Text)       '购票数,确保数值在座位数以内
n = 0       '空座位的个数

For i = 5 To 10       '统计最佳观影区中的空座位编号

For j = 3 To 8

If zw((i - 1) * C + j) = 0 Then

n = n + 1

kzw(n) =_____

End If

Next j


Next i
min = C: start = 0: k = 1
Do While k + m - 1 <= n
If kzw(k) + m - 1 = kzw(k + m - 1) Then
x = Abs(C \ 2 - (kzw(k) + kzw(k + m - 1)) \ 2 Mod C)
If x < min Then

min = x


start = k       '记录满足座位条件的起始空位号
If min = 0 Then Exit Do       'Exit Do 表示退出循环

End If


End If
_____
Loop
ans = ""
If start = 0 Then

ans = "未能推荐座位,请手工选座"

Else


For i = kzw(start) To_____
'CStr 函数把表达式转换为字符串,不产生前置空格

ans = ans + "第" + CStr(i \ C + 1) + "排" + CStr(i Mod C) + "座 "

Next i


End If Label2.Caption = ans
End Sub
编辑解析赚收入
收藏
|
有奖纠错

同类型试题

优质答疑

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

用户名称
2019-09-19

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

用户名称
2019-09-19
我要答疑
编写解析
解析:

奖学金将在审核通过后自动发放到帐

提交
我要答疑
我要答疑:
提交