欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
幻方制作vb
程序源代碼清單
1、窗體Pwny0的程序
Dim Ne(100, 100) As Integer '自然方陣
Dim c(100, 100) As Integer '幻方數組
Private m As Integer, r As Integer '幻方參數
Private ak As Integer, bk As Integer '方法、起點(diǎn)
Private v As Integer, w As Integer, s As Integer
Dim ckr As String, u As Integer, sk As Integer
Dim L(210) As Long '檢驗數組
Private n As Integer, a As Integer, b As Integer
Private z As Integer, k As Integer, t As Integer
Sub swcg(n) '通用幻方檢驗過(guò)程
Erase L
L(0) = n * (n * n + 1) / 2 '幻和
z = 2 * n + 2: k = 0
For i = 1 To n
For j = 1 To n
L(i) = L(i) + c(i, j)
'驗算幻方C的行和與列和
L(n + i) = L(n + i) + c(j, i)
Next j
Next i
For j = 1 To n
L(z - 1) = L(z - 1) + c(j, j)
L(z) = L(z) + c(n + 1 - j, j)
'驗算幻方C的兩條對角線(xiàn)
Next j
For i = 1 To z '上述結果與幻方C的幻和比較
If L(i) <> L(0) Then k = k + 1
Next i
End Sub
Private Sub Command1_Click() '開(kāi)始
Erase c, Ne '初始化數組
CK$ = "要制作多少階幻方?請輸入大于七的自然數:"
nv$ = InputBox$(CK$, "詢(xún)問(wèn)后單選")
n = Val(nv$)
a = n \ 2: b = a + 1 '設置重要參數
w = n Mod 4 '分出階數n 所屬類(lèi)型
v = n + 1: m = n \ 4
sk = IIf(n < 31, 5, 6) '根據數位確定輸出格式
t = 1
Picture2.Print
Picture2.Print " 排出 "; n; " 階自然數陣Ne(i, j)如下: "
For i = 1 To n '
For j = 1 To n
Ne(i, j) = t
Picture2.Print Tab(sk * j); Ne(i, j);
t = t + 1
Next j
Picture2.Print
Next i
End Sub
Sub nycfym(n) '穿心對調主過(guò)程
Picture2.Print
If ak = 1 Then
Picture2.Print "這是使用穿心對調二法:奇行換偶,偶行換奇"
ckr = "穿心對調二法"
Else
Picture2.Print "這是使用穿心對調一法:奇行換奇,偶行換偶"
ckr = "穿心對調一法"
End If
For k = 1 To 2
bk = IIf(ak = 1, 3 - k, k) '奇行換奇,偶行換偶
For i = k To a Step 2
For j = bk To a Step 2 '
c(i, j) = Ne(v - i, v - j)
c(v - i, v - j) = Ne(i, j)
c(i, v - j) = Ne(v - i, j) '左右對稱(chēng)
c(v - i, j) = Ne(i, v - j) '穿心對調
Next j
Next i
Next k
End Sub
Sub oypb(n) '重排米字過(guò)程
If ak = 1 Then
For i = 1 To n '二法重排米字(順向)
c(i, b) = Ne(i, v - i) '中列向下
c(i, v - i) = Ne(i, b) '副對角線(xiàn)向左下
c(b, i) = Ne(i, i) '中行向右
c(i, i) = Ne(b, i) '主對角線(xiàn)向右下
Next i
Else
For i = 0 To n - 1 '一法重排米字(逆向)
c(n - i, b) = n + (n - 1) * i '中列向上
c(b, n - i) = 1 + v * i '中行向左
c(n - i, 1 + i) = v / 2 + n * i '副對角線(xiàn)向右上
c(n - i, n - i) = (n - 1) * n / 2 + 1 + i
'主對角線(xiàn)向左上
Next i
End If
End Sub
Private Sub Command6_Click() '對調中樞主程序
For i = 1 To n
For j = 1 To n
c(i, j) = Ne(i, j)
Next j
Next i
Call nycfym(n) '穿心對調主過(guò)程
If n Mod 2 = 0 Then '一、二法偶階對調后調整
If w = 2 Then
For i = 2 To a - 1 '單偶階上下對調a列
u = c(i, a): c(i, a) = c(v - i, a)
c(v - i, a) = u '再左右對調a+1行
u = c(b, i): c(b, i) = c(b, v - i)
c(b, v - i) = u
Next i
u = c(1, a): c(1, a) = c(1, b) '
c(1, b) = u '最后對調首行、首列的中間兩項
u = c(a, 1): c(a, 1) = c(b, 1)
c(b, 1) = u
u = c(1, 3): c(1, 3) = c(n, 3)
c(n, 3) = u
u = c(3, 1): c(3, 1) = c(3, n)
c(3, n) = u
End If
ElseIf n Mod 2 = 1 Then '一、二法奇階對調后調整
Call oypb(n) '加入十字,重排米字
If w = 3 Then
For i = 1 To a - 1 '4m+3階上下對調a列
u = c(a, i): c(a, i) = c(a, v - i)
c(a, v - i) = u
u = c(i, a): c(i, a) = c(v - i, a)
c(v - i, a) = u '再左右對調a行
Next i
u = c(a, a): c(a, a) = c(v - a, v - a)
c(v - a, v - a) = u '最后對調中心四項
u = c(a, b): c(a, b) = c(v - a, b)
c(v - a, b) = u
End If
End If
nk = IIf(n < 58, n, 57) ' 最多顯示57列
For i = 1 To n '顯示幻方
For j = 1 To nk
Picture2.Print Tab(sk * j); c(i, j);
Next j
Picture2.Print '換行
Next i
End Sub
Private Sub Command2_Click() '檢驗
swcg n '通用幻方檢驗過(guò)程
If k = 0 Then
Picture2.Print "C是一個(gè)"; n, "階幻方,其幻和為"; L(0), "它的每一行、每一列及兩對角線(xiàn)上數之和都是:"; L(8)
MsgBox "這個(gè)C是一個(gè)標準幻方。", 48, "檢驗結論:" ' 信息對話(huà)框
Else
Picture2.Print
Picture2.Print Tab(20); "遺憾,C不是一個(gè)幻方!"; "其中有"; k; "條不符合要求。"
Exit Sub
End If
End Sub
Private Sub Command3_Click() '記錄
Open "d:\09\穿心對調幻方A.txt" For Append As #1 '打開(kāi)或創(chuàng )立文件
Print #1,
Print #1, "使用 " & ckr & "制作的 "; n; " 階幻方如下:"; "從1 填到 "; n * n
For i = 1 To n '50
For j = 1 To n
Print #1, Tab(sk * j); c(i, j);
Next j
Print #1,
Next i
If k = 0 Then
Print #1, "C是一個(gè)"; n, "階幻方,其幻和為"; L(0), _
"它的每一行、每一列及兩對角線(xiàn)上數之和都是:"; L(8)
Else
Print #1, Tab(20); "遺憾,C不是一個(gè)幻方!"; "其中有"; k; "條不符合要求。"
End If
Print #1,
Close #1 '關(guān)閉這個(gè)文本
End Sub
Private Sub Command4_Click() '退出
End
End Sub
Private Sub Option1_Click(Index As Integer)
ak = Index '單選制作法
End Sub
Private Sub Command5_Click() '清屏
Picture2.Cls
HScroll1.Value = 10 '寫(xiě)入點(diǎn)返回左上角
VScroll1.Value = 10
End Sub
Private Sub Form_Load() '滾動(dòng)圖形窗口設置
Picture2.AutoSize = True
Picture1.BorderStyle = 0
Picture2.BorderStyle = 0
Picture2.Width = 31680
Picture2.Height = 31350
HScroll1.Max = Picture2.Width - Picture1.Width
VScroll1.Max = Picture2.Height - Picture1.Height
Option1(0).Value = True
End Sub
Private Sub HScroll1_Change() '水平滾動(dòng)條變化
Picture2.Left = -HScroll1.Value
End Sub
Private Sub VScroll1_Change() '垂直滾動(dòng)條變化
Picture2.Top = -VScroll1.Value
End Sub
程序運行與功能
8 階自然數陣Ne及使用 穿心對調二法制作的 8 階幻方如下:從1 填到 64
C是一個(gè) 8 階幻方,其幻和為 260 它的每一行、每一列及兩對角線(xiàn)上數之和都是: 260
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
1
63
3
61
60
6
58
8
56
10
54
12
13
51
15
49
17
47
19
45
44
22
42
24
40
26
38
28
29
35
31
33
32
34
30
36
37
27
39
25
41
23
43
21
20
46
18
48
16
50
14
52
53
11
55
9
57
7
59
5
4
62
2
64
圖-2:自然方陣與穿心對調幻方
運行穿心對調幻方程序,出現主窗體界面。單擊“開(kāi)始”按鈕,初始化幻方數組C與Ne,跳出輸入對話(huà)框InputBox,在輸入區內填入幻方階數?;梅诫A數n先限制在100以?xún)?,重新設置輸出間隔sk后,階數n可以繼續向上;考慮到穿心對調是利用方陣的對稱(chēng)性,因而要求n≥8。確定后n階自然數陣Ne顯示在滾動(dòng)窗口的圖片框Picture2上。用單選按鈕選定制作方法,單擊“對調”按鈕,調入中樞主過(guò)程nycfym(n)先予對調,再做后期調整形成幻方C,最后將這幻方C顯示在滾動(dòng)窗口的圖片框Picture2上,供君觀(guān)賞。單擊“檢驗”按鈕,則對所作幻方C進(jìn)行幻和檢驗,在常規檢驗過(guò)程swcg(n)中,用循環(huán)語(yǔ)句For…Next將幻方C的每一行、每一列及兩對角線(xiàn)的n個(gè)數累加起來(lái),與幻和Sn=n(n2+1)/2相比較,均符合幻和則為標準幻方,以信息對話(huà)框MsgBox告知,并把結論顯示在該幻方的下方。
當一幅圖片快寫(xiě)完,垂直滾動(dòng)條VScroll1的滑塊到了最下方,這時(shí)單擊“清屏”按鈕,清除所顯示的內容,光標(寫(xiě)入點(diǎn))自動(dòng)返回圖片框的左上角。
圖片框的寬度是有限的,本軟件設置滾動(dòng)顯示幻方最多時(shí)是57列,再多的列將被略去。如要看全或之后仔細玩賞研究,可以單擊“記錄”按鈕,程序將幻方及結論記錄在事前創(chuàng )建的文件夾D\09中的穿心對調幻方A.txt文本內,圖-2是一例,能再作打印或其它處理。
單擊“退出”按鈕后退出程序。此工程能生成可執行文件穿心對調幻方.exe,在windows95/98環(huán)境下使用,記住在硬盤(pán)D中先創(chuàng )建09文件夾以備記錄。
穿心對調幻方的制作原理
以n階方陣的行、列順序依次排入自然數1 到n×n,得到的是n階自然數陣Ne。見(jiàn)圖-2左側,在自然數陣里,關(guān)于中心對稱(chēng)的兩項之和恒相等,為常數n2+1,稱(chēng)作兩對稱(chēng)項;把關(guān)于中心(格)對稱(chēng)的兩項互相調換位置,稱(chēng)為穿(中)心對調。
整除運算n\2=a, b=a+1是n階方陣的重要參數,如n屬于奇數,則Ne(b,b)是中行與中列相交的中心格;再由對稱(chēng)而言,我們只要穿心對調施行到a行a列即可。在穿心對調主過(guò)程nycfym(n)中,正是這樣將n階自然數陣Ne(i,j)中的數隔行、隔列交錯對稱(chēng)地互換一半項,參閱圖-2右側,二法口訣是“奇行換偶,偶行換奇,左右對稱(chēng),穿心對調”。
取模運算n mod 4用來(lái)求余數w,w將階數分為四個(gè)類(lèi)型,即雙偶數4m、單偶數4m+2及奇數4m+1和4m+3??礃?,穿心對調法最適合于4m階,操作之后即得幻方;而對4m+2階還要將中間多出的不平衡的兩行、兩列及一些項進(jìn)行調整,這近似經(jīng)驗或靈感的調整,很難找出動(dòng)作的規則,才是編程的艱難之處!參閱對調中樞主程序Private Sub Command6_Click()。對于奇數階,施行穿心對調一法或二法后,得到的也不是幻方,必須將中行和中列及兩對角線(xiàn)重新排列,稱(chēng)作重排米字,見(jiàn)oypb(n)過(guò)程及圖-3例。4m+3階最為復雜,還有調整部分項的第三步工作,才得幻方。VB編程時(shí)往往對不規范的另星動(dòng)作熬盡腦汁,調試成功后才嘗到勝利的喜悅,運行時(shí)轉瞬間制得高階幻方并加以驗算,這才覺(jué)得電腦的效率與程序之偉大!
37
80
3
78
9
76
7
74
5
72
38
70
13
17
15
66
14
64
19
62
39
60
25
58
23
56
27
54
29
52
40
33
32
48
35
46
1
11
21
31
41
51
61
71
81
36
47
34
50
49
42
30
53
28
55
26
59
24
57
22
43
20
63
18
68
16
67
65
69
12
44
10
77
8
75
6
73
4
79
2
45
使用 穿心對調二法制作的 9 階幻方如下:從1 填到 81 C是一個(gè) 9 階幻方,其幻和為 369
圖-3:9階穿心對調幻方與米字示意
幻方制作是一個(gè)大課題,如果說(shuō)馬步法似奔馳疆場(chǎng)、軍容嚴正,那么穿心對調法則是坐席論道、靈活機動(dòng)。倘有機緣,以后再介紹其它制作法的VB程序。讀者若有興趣可與我聯(lián)系,電話(huà):0712—2313763。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
上一條下一條 實(shí)驗39
vb編程序,在有序數組中插入一個(gè)數,在有序數組中刪除一個(gè)數.
VB編程程序設計考試題節選
vb數組試驗報告
vb
《Visual Basic程序設計(第4版)》第6章 循環(huán)結構程序設計
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久