会场座位安排。会场座位共6行10列(座位号逐行编号,1~60),每场讲座邀请9个家庭(每个家庭1~4人)。按照以下规则安排座位:
①用“0”表示可使用的空座,“*”表示间隔座位。
②一人安排一座,同一个家庭的成员在同一行连续就坐。
③按照防疫要求,不同家庭之间必须安排间隔座位隔开(前、后、左、右四个方向)。小王设计算法的思路如下:
①按家庭人数降序输入9个家庭的人数,逐个进行座位排定。
②每个家庭排座时,都从1号座位开始,向右逐个、逐行查找满足家庭需要的连续空座区域。
③当有多个连续空座区域满足要求,则安排在新增间隔座位数最少的区域(使剩余的可安排空座位数最多)。
例如:在安排好1,2,3三个家庭时的座位如图a所示,安排4号家庭(3人)时,若安排在A区域,则需新增间隔座位数5个(用X表示),若安排在B区域,则 要新增间隔座位数4个(用Y表示),因此,4号家庭安排在B区域。

编写VB程序安排座位。如图b所示,运行程序,窗体加载时在左边的列表框List1中显示会场的初始状态。在文本框Text1中输入9个家庭的人数。单击“排座位”按钮Command1,在右边的列表框List2中显示排座结果。

(1)如图c所示,已安排了5个家庭的座位,现在要安排6号家庭(2人),按此算法,为使新增间隔座位最少,应将6号家庭安排在区域 (填字母)。
(2)实现上述功能的VB程序如下,请在横线处填入合适的代码。




【考点】面向对象的程序设计语言.
【答案】略
【解答】
【点评】
声明:本试题解析著作权属菁优网所有,未经书面同意,不得复制发布。
发布:2024/4/23 12:26:7组卷:1引用:1难度:0.9
相似题
-
1.报名抽签。小明编写了报名抽签的VB程序。程序运行时,从数据库中读取全体学生的学号和姓名数据;报名时,在文本框Text1中输入报名学生的学号,按下回车键后进行查询,若是未报名的,将该报名人的信息显示在列表框List1中;报名完成后,在文本框Text2中输入抽签人数,单击“抽签”按钮Command1,在列表框List2中显示随机抽签结果,程序运行界面如图所示。请回答下列问题:
(1)以下代码中语句“List2.AddItem xm2(ch)”中的AddItem是
(2)请在横线处填入合适的代码。发布:2025/1/2 10:30:2组卷:0引用:1难度:0.4 -
2.近似公式求自然对数的底e的值,直到最后一项的值小于10-5为止。e≈1+
,小李为此编写了如下VB程序段:11!+12!+13!+14!+⋯+1n!
方框中的代码由以下三部分组成:
①i=i+1 ②jc=jc*I ③e=e+1/jc
下列选项中代码顺序正确的是( )发布:2025/1/2 11:0:1组卷:3引用:2难度:0.4 -
3.下列程序的运行结果是( )
发布:2025/1/2 11:0:1组卷:1引用:2难度:0.5