/*

Prikaz raznih elemenata matrice u odnosu na dijagonale pomocu funkcija.


// elementi glavne dijagonale matrice imaju osobinu: i = j


// elementi iznad glavne dijagonale matrice imaju osobinu: i < j


// elementi prve dijagonale iznad glavne dijagonale matrice imaju osobinu: j-i = 1

// elementi druge dijagonale iznad glavne dijagonale matrice imaju osobinu: j-i = 2

// elementi trece dijagonale iznad glavne dijagonale matrice imaju osobinu: j-i = 3

// elementi cetvrte dijagonale iznad glavne dijagonale matrice imaju osobinu: j-i = 4


// elementi ispod glavne dijagonale matrice imaju osobinu: i > j


// elementi prve dijagonale iznad glavne dijagonale matrice imaju osobinu: i-j = 1

// elementi druge dijagonale iznad glavne dijagonale matrice imaju osobinu: i-j = 2

// elementi trece dijagonale iznad glavne dijagonale matrice imaju osobinu: i-j = 3

// elementi cetvrte dijagonale iznad glavne dijagonale matrice imaju osobinu: i-j = 4




// elementi sporedne dijagonale matrice imaju osobinu: i+j = n-1


// elementi iznad sporedne dijagonale matrice imaju osobinu: i+j < n-1


// elementi prve dijagonale iznad sporedne dijagonale matrice imaju osobinu: i+j = 3

// elementi druge dijagonale iznad sporedne dijagonale matrice imaju osobinu: i+j = 2

// elementi trece dijagonale iznad sporedne dijagonale matrice imaju osobinu: i+j = 1

// elementi cetvrte dijagonale iznad sporedne dijagonale matrice imaju osobinu: i+j = 0


// elementi ispod sporedne dijagonale matrice imaju osobinu: i+j >= n


// elementi prve dijagonale ispod sporedne dijagonale matrice imaju osobinu: i+j = 5

// elementi druge dijagonale ispod sporedne dijagonale matrice imaju osobinu: i+j = 6

// elementi trece dijagonale ispod sporedne dijagonale matrice imaju osobinu: i+j = 7

// elementi cetvrte dijagonale ispod sporedne dijagonale matrice imaju osobinu: i+j = 8


 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

*/

#include <stdio.h>

typedef int TMATRICA [10][10];


// Prikazuje matricu M koja ima r redova i k kolona
void PrikaziMatricu(TMATRICA M,int r,int k)
{
    int i,j;

    printf("\n");

    for(i=0;i<r;i++){
        for(j=0;j<k;j++)
            printf("%3d",M[i][j]);

        printf("\n\n");
    }
}


// Smesta te elemente u niz
void ElementiIspodSporedneDijagonaleMatrice(TMATRICA M,int r, int k)
{
    int i, j, niz[20], brClan=0;

    for(i=0;i<r;i++){
        for(j=0;j<k;j++)
            if(i+j > 4)
                niz[brClan++] = M[i][j];
    }

    for(i=0;i<brClan;i++)
        printf("%3d",niz[i]);
}




int main(void)
{
    TMATRICA M =
                {
                    { 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}
                };
    int r=5,k=5;

    PrikaziMatricu(M,r,k);

    printf("\n\n Elementi ispod sporedne dijagonale matrice su: \n\n");
    ElementiIspodSporedneDijagonaleMatrice(M,r,k);

    printf("\n\n");
    return 0;
}