幻方是一種將數(shù)字安排在正方形格子中,使每行、列和對角線上的數(shù)字和都相等的方法。n階幻方是由1~n2之間的自然數(shù)組成的一個n階方陣,其各行、各列及對角線所含的數(shù)字之和均相等。例如3階幻方(如圖1),幻和為15。
奇數(shù)階幻方的構(gòu)造是所有幻方中最簡單的,可以按照如下規(guī)則來實現(xiàn):
(1)將1放在第一行中間一列;(如圖2)
(2)從2開始直到n*n為止,各數(shù)按下列規(guī)則存放:假設(shè)當(dāng)前要存放的數(shù)為k,則k存放在(k-1)數(shù)的右上方并按照規(guī)則:
①若(k-1)放在第1行且不是最后一列,則將k存放在n行,(k-1)所在列右側(cè);(如圖3)
②若(k-1)放在第n列且不是第一行,則將k存放在第1列,(k-1)的上1行;(如圖4)
③若(k-1)即不在第1行也不在最后1列:
若(k-1)右上方有數(shù),則將k放在(k-1)的下1行的同一列。(如圖5)
若(k-1)右上方?jīng)]有數(shù),則將k放在(k-1)的右上方;(如圖6)
④若(k-1)在第1行第n列,將k填在(k-1)的正下方(如圖7)
1.用如圖8的程序生成5階幻方后,List1中的第一行顯示的是1724 l 8 151724 l 8 15。
2.30階以內(nèi)的幻方程序如圖,代碼如下,請完成代碼填空:①(n+1)/2或n\2+1
②i=i-1
③a((i-2)*n+j+1)=0
④3-n①(n+1)/2或n\2+1
②i=i-1
③a((i-2)*n+j+1)=0
④3-n
PrivateSubCommand1_Click( ?。?br />DimiAsInteger,jAsInteger,nAsInteger'i表示行,j表示列
Dima(1To1000)AsInteger,kAsInteger'數(shù)組a依次保存幻方中的數(shù)DimsAsString
n=Val(Text1.Text)
j=①
a(j)=1
i=1
Fork=2Ton*n
Ifi=1Andj<>nThen
i=n:j=j+1
a((i-1)*n+j)=k
ElseIfj=nAndi<>1Then
②j=1
a((i-1)*n+j)=k
ElseIfi=1Andj=nThen
i=i+1
a((i-1)*n+j)=k
ElseIfi<>1Andj<>nThen
If
③Then
i=i-1:j=j+1
a((i-1)*n+j)=k
Else
i=i+1
a((i-1)*n+j)=k
EndIf
EndIfNextk
List1.Clear
Fori=1Ton
s=″″
Forj=1Ton
s=s+format(a((i-1)*n+j))
Nextj
List1.AddItemsNexti
EndSub
Functionformat(xAsInteger)AsString'將數(shù)字字符串格式化為4個字符長度DimnAsInteger,iAsInteger
format=Str(x)
n=Len(format)
Fori=1To④
④format=““+formatNexti
EndFunction
②i=i-1
③a((i-2)*n+j+1)=0
④3-n
②i=i-1
③a((i-2)*n+j+1)=0
④3-n
【考點】應(yīng)用程序的試運行和保存.
【答案】1724 l 8 15;①(n+1)/2或n\2+1
②i=i-1
③a((i-2)*n+j+1)=0
④3-n
②i=i-1
③a((i-2)*n+j+1)=0
④3-n
【解答】
【點評】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/6/27 10:35:59組卷:2引用:1難度:0.2
相似題
-
1.大部分社交軟件都有好友推薦的功能,當(dāng)用戶 A 和用戶 B 的共同好友數(shù)量超過閾值 p 時,由系統(tǒng)向用戶 A 推薦用戶 B。
編寫 VB 程序,實現(xiàn)好友推薦功能。運行程序,列表框 Listl 中顯示用戶 id 及好友列表,在文本框 Textl 中 輸入推薦目標(biāo)用戶 id,在文本框 Text2 中輸入閾值 p,點擊“推薦”按鈕,在列表框List2 中顯示用戶之間的關(guān)系,在標(biāo)簽 Label5 中顯示向目標(biāo)用戶推薦的好友列表。程序運行界面如圖:
(1)根據(jù)如圖所示數(shù)據(jù),若輸入用戶 id 為“3”,輸入閾值為“3”,則推薦好友為:
(2)實現(xiàn)上述功能的 VB 程序如下,請在橫線處填入合適的代碼。發(fā)布:2025/1/2 10:30:2組卷:0引用:1難度:0.3 -
2.某學(xué)校開展了藝術(shù)節(jié)活動,數(shù)組a中存儲了n個節(jié)目的編號和得分?jǐn)?shù)據(jù),數(shù)組存儲結(jié)構(gòu)如圖所示:
小明使用選擇排序思想對上述n個節(jié)目按得分進(jìn)行降序排序(得分相同的按編號升序排列),并依據(jù)得分插入各個節(jié)目的排名信息,處理后數(shù)組a的存儲結(jié)構(gòu)如圖所示:
程序運行時,單擊命令按鈕Command1后讀取數(shù)據(jù)到數(shù)組a中并顯示在列表框List1中,單擊命令按鈕Command2后將節(jié)目按照上述規(guī)則進(jìn)行排序,并將排名結(jié)果顯示在列表框List2中。
實現(xiàn)上述功能的VB程序如下,請回答下列問題:
(1)已知窗體名稱為Forml,要使程序加載時,窗體標(biāo)題自動顯示為“第15題程序”,則可在
(2)請在橫線處填入合適的代碼。
(3)加框處代碼有誤,請改正。發(fā)布:2025/1/2 10:30:2組卷:0引用:1難度:0.3 -
3.小明用python語言中對大小為100*100像素的圖像“上.jpg”(如圖所示)進(jìn)行簡單處理,部分代碼如圖:
程序執(zhí)行后的圖像效果是( ?。?/h2>發(fā)布:2024/12/20 9:30:2組卷:3引用:5難度:0.4
把好題分享給你的好友吧~~