2017-10-16 7 views
-2

행렬의 모든 대각선 요소를 동일하게 결정하는 함수를 작성하고 싶습니다. 예를 들어매트릭스에서 모든 diagnoal 요소를 얻는 방법?

: 어떤 도움에 감사드립니다

?-diagonal([[1,2,3,4], 
      [2,1,5,6], 
      [6,2,1,9], 
      [8,7,5,1]]). 
    true. 

.

+0

귀하의 질문은 제목과 일치하지 않습니다 얻을 = 동일 함 확인!. –

답변

0

질문 해결 ...

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. 
+0

두 번째 줄을 끝내지 않아도됩니다. -? 또한, 마지막 줄에 꼬리가 꼬리가되어서는 안됩니까? –