會場座位安排。會場座位共6行10列(座位號逐行編號,1~60),每場講座邀請9個家庭(每個家庭1~4人)。按照以下規(guī)則安排座位:
①用“0”表示可使用的空座,“*”表示間隔座位。
②一人安排一座,同一個家庭的成員在同一行連續(xù)就坐。
③按照防疫要求,不同家庭之間必須安排間隔座位隔開(前、后、左、右四個方向)。小王設計算法的思路如下:
①按家庭人數(shù)降序輸入9個家庭的人數(shù),逐個進行座位排定。
②每個家庭排座時,都從1號座位開始,向右逐個、逐行查找滿足家庭需要的連續(xù)空座區(qū)域。
③當有多個連續(xù)空座區(qū)域滿足要求,則安排在新增間隔座位數(shù)最少的區(qū)域(使剩余的可安排空座位數(shù)最多)。
例如:在安排好1,2,3三個家庭時的座位如圖a所示,安排4號家庭(3人)時,若安排在A區(qū)域,則需新增間隔座位數(shù)5個(用X表示),若安排在B區(qū)域,則 要新增間隔座位數(shù)4個(用Y表示),因此,4號家庭安排在B區(qū)域。
編寫VB程序安排座位。如圖b所示,運行程序,窗體加載時在左邊的列表框List1中顯示會場的初始狀態(tài)。在文本框Text1中輸入9個家庭的人數(shù)。單擊“排座位”按鈕Command1,在右邊的列表框List2中顯示排座結(jié)果。
(1)如圖c所示,已安排了5個家庭的座位,現(xiàn)在要安排6號家庭(2人),按此算法,為使新增間隔座位最少,應將6號家庭安排在區(qū)域 (填字母)。
(2)實現(xiàn)上述功能的VB程序如下,請在橫線處填入合適的代碼。
【考點】面向?qū)ο蟮某绦蛟O計語言.
【答案】見試題解答內(nèi)容
【解答】
【點評】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復制發(fā)布。
發(fā)布:2024/4/23 12:26:7組卷:1引用:1難度:0.9
把好題分享給你的好友吧~~