試卷征集
加入會(huì)員
操作視頻

四宮數(shù)獨(dú)規(guī)則:在4×4的格子中,根據(jù)已知數(shù)字,推理出所有剩余空格的數(shù)字,并滿足每一行、每一列、每一個(gè)宮(粗線框區(qū)域)內(nèi)均含1到4的數(shù)字并且不重復(fù),每道數(shù)獨(dú)有且僅有唯一答案。
例如,根據(jù)規(guī)則推理圖1數(shù)獨(dú),在第一宮中4個(gè)格子已經(jīng)3個(gè)格子分別是數(shù)字1到3,缺的數(shù)字為4,因此第一行第一格空缺的數(shù)字填4,以此類推,直至將所有格子都推理出來。
(1)根據(jù)上述規(guī)則推理,數(shù)獨(dú)(圖2)第一行A處應(yīng)是數(shù)字
2
2
。
(2)小明編寫了四宮數(shù)獨(dú)推算的VB程序,單擊“推算”按鈕Command1后,在列表框List1中輸出數(shù)獨(dú)推算過程和結(jié)果,如圖3所示。實(shí)現(xiàn)推算的VB程序如下,請(qǐng)?jiān)跈M線處填入合適的代碼。
Dimd(1To16)AsInteger'數(shù)組d逐行存儲(chǔ)四宮數(shù)獨(dú)
PrivateSubCommand1_Click ( ?。?br />DimiAsInteger,flagAsBoolean
Fori=1To16
d(i)=0‘值0表示該位置還未填數(shù)字
Nexti
‘初始化數(shù)獨(dú)中已知位置的數(shù)字
d(2)=4:d(11)=3:d(14)=2:d(16)=4
List1.Clear
'在列表框Li1中輸出四宮數(shù)獨(dú),代碼略
flag=False
DoWhileNotflag
flag=True
flag=True

Fori=1To16
‘函數(shù)check(i)實(shí)現(xiàn)對(duì)第i位置進(jìn)行推算
Ifd(i)=0Then
d(i)=check(i)
Ifd(i)>0Then
flag=False
'Forniat(i,″00″)函數(shù)實(shí)現(xiàn)將變量i的值按2個(gè)字符寬度輸出
List1.Addltem“第″&Format(i,″00″&″位置填″&d(i)
EndIf
EndIf
Nexti
Loop
'在列表框Lil中輸出四宮數(shù)獨(dú),代碼略
EndSub
根據(jù)每一行、第一列、每一個(gè)宮的已有數(shù)字進(jìn)行推算
Functioncheck(xAsInteger)AsInteger
Dimt(0To4)AsInteger,mAsInteger
DimrowAsInteger,colAsInteger,nAsInteger,kAsInteger
Form=0To4
t(m)=0
Nextm
'對(duì)當(dāng)前所在行列進(jìn)行推算
row=(x-1)\4+1
col=(x-1)Mod4+1
Form=1To4
t(d(row-1)*4+m)=1
t(②
(m-1)*4-col
(m-1)*4-col
)=1
Nextm
'進(jìn)行宮內(nèi)推算
Ifrow<=2Andcol<=2Thent(d(7-x))=1
Ifrow<=2Andcol>2Thent(d(11-x)=
Ifrow>2Andcol<=2Thent(d(23-x)=1
Ifrow>2Andcol>2Thent(d(27-x)=1
k=0
Form=1To4
Ift(m)=0Thenn=mElsek=k+1
Nextm
If③
k=3
k=3
Thencheck=nElsecheck=0
EndFunction
菁優(yōu)網(wǎng)

【答案】2;flag=True;(m-1)*4-col;k=3
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/4/20 14:35:0組卷:0引用:1難度:0.5
相似題
  • 菁優(yōu)網(wǎng)1.《孫子算經(jīng)》中提出“物不知其數(shù)”的問題,此數(shù)以3除余2,以5除余3,以7除余2.以下程序段是求指定范圍內(nèi)滿足該問題條件的自然數(shù)及其個(gè)數(shù)。
    k=0'用來計(jì)數(shù)
    Max=Val(Text1.Text)'指定范圍
    n=9'①
    Do While n<=Max
    If n Mod 3=2And n Mod 5=3Then'②
    List1.AddItem Str(n)
    End If
    n=n+7'③
    k=k+1   ④
    Loop
    Label1.Caption=Str(Max) &“范圍內(nèi)滿足問題的數(shù)有“& Str(k) &“個(gè)“
    運(yùn)行程序,在文本框中輸入自然數(shù)600,結(jié)果統(tǒng)計(jì)的個(gè)數(shù)與列表框中輸出的個(gè)數(shù)不相符,如圖所示:請(qǐng)問出現(xiàn)此問題的原因是( ?。?/h2>

    發(fā)布:2024/10/26 17:0:2組卷:4引用:1難度:0.4
  • 2.有如下VB程序段:
    菁優(yōu)網(wǎng)
    數(shù)組元素a(1)到a(6)的值分別是“8,5,8,6,1,8”,數(shù)組b和f各元素的初值均為0,執(zhí)行該程序段后,標(biāo)簽Label1上顯示的內(nèi)容為(  )

    發(fā)布:2024/11/2 14:0:2組卷:0引用:1難度:0.4
  • 3.輸出字符串的所有非空子串,如:“ABC”、“AB”、“BC”、“A”、“B”、“C”都是“ABC”的非空子串,實(shí)現(xiàn)該功能的VB程序段如下:
    菁優(yōu)網(wǎng)
    上述程序段中方框處可選語句為:
    ①Len(s) ②Len(s)-i+1 ③Mid(s,i,j) ④Mid(s,j,i)
    則(1)(2)處語句依次可為(  )

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