幻方矩陣是一種特殊的方陣,使得每行、每列以及對角線上所有數字之和相同,因此有時也被稱為“魔方”。Python作為一門流行的編程語言,可以非常方便地生成幻方矩陣。
def magic_square(n):
# 聲明一個n*n的二維列表
square = [[0] * n for i in range(n)]
# 初始位置
i, j = 0, n // 2
# 循環n*n次
for k in range(1, n**2+1):
square[i][j] = k
# 查找下一個位置
if k % n == 0:
i, j = (i+1) % n, j
else:
i, j = (i-1) % n, (j+1) % n
return square
# 測試
s = magic_square(3)
for row in s:
print(row)
這段代碼實現了一個生成幻方矩陣的函數。該函數使用二維列表表示幻方矩陣,內部實現了一個簡單的算法來生成幻方矩陣的每個元素。在測試中,我們使用3作為參數調用該函數,并打印輸出了生成的幻方矩陣。
Python中的列表和循環語句能夠讓我們輕松實現幻方矩陣生成算法。使用Python,我們可以靈活地掌握算法和數據結構,輕松應對各種編程任務。