galiba soruna çok odaklandığınız için çok ufak bir noktayı kaçırıyorsunuz.. for döngüsünde ilk değer başlangıç değeridir.. o yüzden i=0;i<N dediğiniz zaman 0 da başlar ve N-1 e kadar(N-1) dahil devam eder(Bunda sorun yok).. Ama j=N dediğiniz zaman döngü direkt N den başlar ve out of index hatası alırsınız.. Çünkü kodunuz 3x3 elemanlı bir dizi için şöyle işler sout([0][3]) => out of index hatası .. Çünkü dizinin 3 indexinde hiçbir eleman olmadığı için de 3 "indexli" elamanı bulamaz..