-2
我想寫一個函數來確定矩陣中的所有對角線元素是相同的。如何獲取矩陣中的所有診斷元素?
例如:
?-diagonal([[1,2,3,4],
[2,1,5,6],
[6,2,1,9],
[8,7,5,1]]).
true.
任何幫助表示讚賞。
我想寫一個函數來確定矩陣中的所有對角線元素是相同的。如何獲取矩陣中的所有診斷元素?
例如:
?-diagonal([[1,2,3,4],
[2,1,5,6],
[6,2,1,9],
[8,7,5,1]]).
true.
任何幫助表示讚賞。
問題解決了......
diagonal([],_,_).
diagonal([Head|Tail],Index,Value),
nth0(Index,Head,Value),
IndexNext is Index+1,
diagonal(tail,IndexNext,Value).
測試:
?- diagonal([[1,2,3],
[5,1,6],
[9,3,1]],0,X).
X=1.
你不需要結束第二行: - ?另外,最後一行不應該尾巴尾巴? –
你的問題不符合您的標題:得到=檢查它們是相同的! –