試卷征集
加入會員
操作視頻

疊方塊游戲。在一個10×10的區(qū)域內(nèi)玩疊方塊游戲,為方便處理,該區(qū)域的行號從下往上依次編號為1,2、……、9、10,列號從右往左依次編號為0、1、……、8、9。方塊只有一種形狀,如下圖a所示,左上角是該方塊的中心位置。程序界面如下圖b所示,單擊“生成數(shù)據(jù)”按鈕Command1,隨機生成5個[1,9]范圍內(nèi)的數(shù)字,并顯示在文本框Text1中,每個數(shù)字即為方塊的中心位置從該數(shù)字表示的列掉下來,若碰到方塊就疊上去,若一直掉到底部都沒有碰到方塊,就停在底部。所有操作結(jié)束后,輸出整個區(qū)域的狀態(tài),如圖c、圖d所示。圖e為行、列編號示意圖。
菁優(yōu)網(wǎng)
算法概述如下:用一個二進制位表示某個位置的狀態(tài),0表示該位置沒有方塊,1表示該位置有方塊,每一行的狀態(tài)存儲在數(shù)組a中。例如:圖c第1行的狀態(tài)為“1010101010”,則a(1)=682,即29+27+25+23+21=682,根據(jù)a(1)\2^1Mod2的結(jié)果可判斷第1行的第1列是否有方塊。
(1)以圖d為例,a(1)\2^4Mod2的結(jié)果是
1
1
(填數(shù)字)。
(2)實現(xiàn)上述功能的VB程序如下,請在橫線處填入合適的代碼。
DimsAsString
Constn=10
PrivateSubCommand1_Click( ?。?生成數(shù)據(jù)
DimiAsInteger,tAsInteger
Randomize
s=““
Fori=1Ton\2
t=Int(Rnd*9)+1
t=Int(Rnd*9)+1
'隨機生成[1,9]范圍內(nèi)的整數(shù)
s=s+CStr(t)'Cstr
(  )
( ?。?/div>的作用是去掉字符串前面的空格
Nexti
Text1.Text=s
EndSub
PrivateSubCommand2_Click ( ?。?開始游戲
Dima(n)AsInteger
DimiAsInteger,kAsInteger,tAsInteger
DimansAsString
Fori=0Ton
a(i)=0
Nexti
Fork=1ToLen(s)
t=Val(Mid(s,k,1))
Fori=n-2To0Step-1'i=0時該方塊可以直接到達底部
Ifa(i)\2^tMod2=1Ora(i+1)\2^(t-1)Mod2=1Ori=0Then
a(i+1)=a(i+1)+2^t
a(i+1)=a(i+1)+2^t

a(i+2)=a(i+2)+2^t+2^(t-1)
ExitFor'ExitFor為退出For循環(huán)
EndIf
Nexti
Nextk
List1.Clear
ans=″″
Fori=10To1Step-1
Fork=0To9
Ifa(i)Mod2=1Then
ans=″■″+ans
Else
ans=″″+ans
EndIf
a(i)=a(i)\2
a(i)=a(i)\2

Nextk
List1.AddItemans
ans=″″
Nexti
EndSub

【答案】1;t=Int(Rnd*9)+1;(  );a(i+1)=a(i+1)+2^t;a(i)=a(i)\2
【解答】
【點評】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復制發(fā)布。
發(fā)布:2024/6/27 10:35:59組卷:0引用:1難度:0.5
相似題
  • 1.有如下VB程序段:
    菁優(yōu)網(wǎng)
    執(zhí)行該程序段后,變量c的值是( ?。?/h2>

    發(fā)布:2024/12/16 5:0:1組卷:1引用:2難度:0.3
  • 菁優(yōu)網(wǎng)2.小明用python語言中對大小為100*100像素的圖像“上.jpg”(如圖所示)進行簡單處理,部分代碼如圖:
    菁優(yōu)網(wǎng)
    程序執(zhí)行后的圖像效果是( ?。?/h2>

    發(fā)布:2024/12/20 9:30:2組卷:3引用:5難度:0.4
  • 3.由大寫字母組成的長度相同的兩個字符串s1和s2,檢測各字母的數(shù)量,如“ABDAC”與“AABCD”所含字母數(shù)量一樣,與“AABBC”所含字母數(shù)量不一樣。實現(xiàn)該功能的VB程序段如下:
    菁優(yōu)網(wǎng)
    填空處的代碼可以由以下部分組成:
    ①Text2.Text ②val(Text2.Text) ③b(a)=b(a)+1 ④b(a)=b(a)-1 ⑤b(i)<>0⑥b(i)=0
    代碼順序正確的是( ?。?/h2>

    發(fā)布:2024/12/16 9:30:1組卷:3引用:3難度:0.4
小程序二維碼
把好題分享給你的好友吧~~
APP開發(fā)者:深圳市菁優(yōu)智慧教育股份有限公司| 應(yīng)用名稱:菁優(yōu)網(wǎng) | 應(yīng)用版本:5.0.7 |隱私協(xié)議|第三方SDK|用戶服務(wù)條款
本網(wǎng)部分資源來源于會員上傳,除本網(wǎng)組織的資源外,版權(quán)歸原作者所有,如有侵犯版權(quán),請立刻和本網(wǎng)聯(lián)系并提供證據(jù),本網(wǎng)將在三個工作日內(nèi)改正