Dijagonale matrice

     PRIMJER 1:

     Program ispisuje matricu „A“i članove glavne dijagonale matrice „A“.

//Ispisuje matricu“ A“ i elemente glavne  dijagonale matrice“ A“

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'],R['m'],K['n'];

int main()

{

    cout<<"Unesite broj redova  m = "; cin>>m;

    cout<<"Unesite broj kolona  n = "; cin>>n;

    cout<<"Upisi clanove matrice A :"<<endl;

//  Unos elemenata matrice po redovima (za unos po kolonama zamijeniti mjesta indeksima)

    for(i=0; i<m; i++){

      for(j=0; j<n; j++){

        cout<<"    A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

    }}

    cout<<endl;

   cout<<"Upisana je matrica A:"<<endl;

//  Ispis elemenata matrice

    for(i=0; i<m; i++){

      for(j=0; j<n; j++){

        cout<<A[i][j]<<"\t";

      }

      cout<<"\n";

    }

    cout<<endl;

//  Ispis elemenata glavne  dijagonale matrice

    cout<<"Elementi glavne dijagonale matrice su:\n";

    if(m<n) k=m; //broj elemenata glavne odn. sporedne dijagonale

    else k=n;    //odgovara broju manje dimenzije matrice

    for(i=0; i<k; i++){cout<<A[i][i]<<" ";}

    cout<<endl;

    return 0;

}

   EKRAN :

Unesite broj redova  m = 3

Unesite broj kolonaa  n = 3

Upisi clanove matrice A :

         A[0][0] = 3

         A[0][1] = 3

         A[0][2] = 3

         A[1][0] = 3

         A[1][1] = 3

         A[1][2] = 3

         A[2][0] = 3

         A[2][1] = 3

         A[2][2] = 3

 

Upisana je matrica A:

3          4          2

7          8          11

23        4          55

Elementi glavne dijagonale matrice su:

3     8     55

     PRIMJER 2:

     Program ispisuje matricu „A“,članove glavne dijagonale i njihovu sumu-zbir .

//Ispisuje clanove glavne dijagonale i njihov zbir

#include <iostream>

#define dim 10

using namespace std;

int main()

{

int n,i,a[dim][dim],suma;

cout << " Upisi br.redova i kolona matrice nxn = ";

cin >> n;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

cout <<"   a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

 suma=0;

for (int i=1; i<n+1; i++)

{

suma = suma + a[i][i];

 

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=n; j++)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

cout<<endl;

cout<<" CL.glavne dijagonale su : "<<endl;

for(int i=1; i<=n; i++)

{

cout <<a[i][i]<<" \t ";

}

cout<<endl;

cout<<endl;

cout<<"Zbir clanova glavne dijagonale je :"<<suma<<endl;

        return 0;

    }

   EKRAN :

 Upisi br. redova i kolona  nxn = 4

Unesi  clanove :

         a[1][1] = 2

         a[1][2] = 3

         a[1][3] = 4

         a[1][4] = 5

         a[1][1] = 6

         a[1][2] = 7

         a[1][3] = 8

         a[1][4] = 9

         a[1][1] = 1

         a[1][2] = 10

         a[1][3] = 11

         a[1][4] = 12

         a[1][1] = 13

         a[1][2] = 14

         a[1][3] = 15

         a[1][4] = 16

Upisana je matrica je :

2          3          4          5

6          7          8          9

1          10       11         12

13        14       15         16

  CL. glavne dijagonale su :

2       7       11       16

Zbir clanova glavne dijagonale je : 36

     PRIMJER 3:

     Program ispisuje matricu „A“i članove glavne  i  sporedne dijagonale matrice „A“.

//Ispisuje elemente glavne i sporedne dijagonale matrice A

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'],R['m'],K['n'];

int main()

{

    cout<<"Unesite broj redova  m = "; cin>>m;

    cout<<"Unesite broj kolona  n = "; cin>>n;

    cout<<"Upisi clanove matrice A :"<<endl;

//  Unos elemenata matrice po redovima (za unos po kolonama zamijeniti mjesta indeksima)

    for(i=0; i<m; i++){

      for(j=0; j<n; j++){

        cout<<"    A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

    }}

    cout<<endl;

   cout<<"Upisana je matrica A:"<<endl;

//  Ispis elemenata matrice

    for(i=0; i<m; i++){

      for(j=0; j<n; j++){

        cout<<A[i][j]<<"\t";

      }

      cout<<"\n";

    }

    cout<<endl;

//  Ispis elemenata glavne i sporedne dijagonale matrice

    cout<<"Elementi glavne dijagonale matrice su:\n";

    if(m<n) k=m; //broj elemenata glavne odn. sporedne dijagonale

    else k=n;    //odgovara broju manje dimenzije matrice

    for(i=0; i<k; i++){cout<<A[i][i]<<"  ";}

    cout<<endl;

    cout<<"\nElementi sporedne dijagonale matrice su:\n";

    for(i=0; i<k; i++){cout<<A[i][n-1-i]<<"  ";}

    cout<<endl;

    system("PAUSE");

    return 0;

}

   EKRAN :

Unesite broj redova  m = 3

Unesite broj kolonaa  n = 3

Upisi clanove matrice A :

         A[0][0] = 1

         A[0][1] = 2

         A[0][2] = 3

         A[1][0] = 4

         A[1][1] = 5

         A[1][2] = 6

         A[2][0] = 7

         A[2][1] = 8

         A[2][2] = 9

Upisana je matrica A:

 1          2           3

 4          5           6

 7          8           9

Elementi glavne dijagonale matrice su:

 1      5      9

Elementi sporedne dijagonale matrice su:

 3      5      7

Press any key to continue ...

     PRIMJER 4:

     Program ispisuje matricu „A“i,sumu-zbir članova glavne i sporedne dijagonale pojedinačno i ukupno .

//Ispis matrice i suma clanova dijagonala

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sumd=0,suml=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

for(i=0;i<n;i++){

for(j=0;j<n;j++){

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

if(i==j) suml += mat[i][j];

if(i+j==n-1) sumd += mat[i][j];

}

}

printf("\nUnesena je matrica:\n\n");

for(i=0;i<n;i++){

printf("\n");

for(j=0;j<n;j++){

printf("\t%d",mat[i][j]);

}

}

printf("\n\nSuma clanova glavne dijagonale je %f", suml);

 

printf("\n\nSuma clanova sporedne dijagonale je %f", sumd);

 

printf("\n\nSuma clanova dijagonala je %f", suml+sumd);

 

getch();

return 0;

}

   EKRAN :

 Unesi velicinu cjelobrojne kvadratne matrice  nxn = 3

Unesi  elemente matrice :

         M[1][1] = 5

         M[1][2] = 4

         M[1][3] = 3

         M[2][1] = 2

         M[2][2] = 1

         M[2][3] = 6

         M[3][1] = 7

         M[3][2] = 8

        M[3][3] = 9

Upisana je matrica je :

   5          4          3         

   2          1          6         

   7          8          9      

  CL. glavne dijagonale su :

2       7       11       16

Suma clanova glavne dijagonale je  15.000000

Suma clanova sporedne dijagonale je  11.000000

Suma clanova dijagonala  je  36.000000

     PRIMJER 5:

     Program ispisuje matricu i  aritmetičku sredinu članove obe dijagonale matrice .

//Ispis matrice i aritmeticke sredine diijagonalnih clanova

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sred=0;

 

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

for(i=0;i<n;i++){

for(j=0;j<n;j++){

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

if(i==j) sred += mat[i][j];

if(i+j==n-1) sred += mat[i][j];

}

}

sred /= 2*n;

printf("\nUnesena je matrica:\n\n");

for(i=0;i<n;i++){

printf("\n");

for(j=0;j<n;j++){

printf("\t%d",mat[i][j]);

}

}

printf("\n\nAritmeticka sredina dijagonalnih clanova je %f",sred );

getch();

return 0;

}

     PRIMJER 6:

     Program ispisuje matricu „A“,članove glavne  i sporedne dijagonale ,te zajedno elemente sporedne dijagonale i elemente iznad.

//Ispisuje elemente glavne i sporedne dijagonale matrice A

//ispisuje clanove iznad sporedne dijagonale i clanove dijagonale

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'];

int main()

{

    cout<<"Unesite broj redova i kolona  m = "; cin>>m;

    cout<<"Upisi clanove matrice A :"<<endl;

    for(i=0; i<m; i++){

      for(j=0; j<m; j++){

        cout<<"    A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

    }}

    cout<<endl;

   cout<<"Upisana je matrica A:"<<endl;

//  Ispis elemenata matrice

    for(i=0; i<m; i++){

      for(j=0; j<m; j++){

        cout<<A[i][j]<<"\t";

      }

      cout<<"\n";

    }

    cout<<endl;

//  Ispis elemenata glavne i sporedne dijagonale matrice

    cout<<"Elementi glavne dijagonale su:\n";

    if(m<n) k=m; //broj elemenata glavne odn. sporedne dijagonale

    else k=m;    //odgovara broju manje dimenzije matrice

    for(i=0; i<k; i++){cout<<A[i][i]<<" ";}

    cout<<endl;

    cout<<"\nElementi sporedne dijagonale su:\n";

    for(i=0; i<k; i++){cout<<A[i][m-1-i]<<" ";

    }

    cout<<endl;

   cout<<"Clanovi sporedne dijagonale i elementi  iznad:"<<endl;

//  Ispis elemenata matrice

    for(i=0; i<m-1+j; i++){

      for(j=0; j<m-i; j++){

        cout<<A[i][j]<<"\t";

      }

      cout<<"\n";

    }

    cout<<endl;

    return 0;

}

     PRIMJER 7:

     Program ispisuje matricu i članove ispod glavne dijagonale.

//Ispisuje clanove ispod glavne dijagonale

#include <iostream>

#define dim 10

using namespace std;

int main()

{

int n,i,a[dim][dim];

cout << " Upisi br.redova i kolona matrice nxn = ";

cin >> n;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

cout <<"   a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=n; j++)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

cout<<endl;

cout<<" Clanovi  ispod glavne dijagonale su: "<<endl;

for (int j=1; j<=n; j++)

{

 for(int i=j+1; i<=n; i++)      

cout <<a[i][j]<<" \t ";

cout<<endl;

}

return 0;

}

     PRIMJER 8:

     Program ispisuje matricu,sumi članove glavne dijagonalei matricu čiji su članovi uvećani za zbir članova glavne dijagonale.

//Ispisuje matricu,sumu(zbir) clanova glavne dijagonale

//Ispisuje matricu uvecanu za sumu clanova glavne dijagonale

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sum=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

for(i=0;i<n;i++){

for(j=0;j<n;j++){

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

if(i==j) sum += mat[i][j];

}

}

printf("\nUnesena je matrica:\n\n");

for(i=0;i<n;i++){

printf("\n");

for(j=0;j<n;j++){

printf("\t%d",mat[i][j]);

}

}

printf("\n\nSuma (zbir) clanova  glavne dijagonale je %f", sum);

printf("\n");

printf("\nMatrica ciji su clanovi uvecani za ovu sumu je:\n\n");

for(i=0;i<n;i++){

printf("\n");

for(j=0;j<n;j++){

printf("\t%d",mat[i][j]+int(sum));

}

}

getch();

return 0;

}

     PRIMJER 9:

     Program ispisuje matricu,najmanje članove  dijagonala i njihov proizvod .

//Ispisuje matricu,najmanje clanove dijagonala i proizvod najmanjih clanova dijagonala

#include <stdio.h>

#include <conio.h>

#define MAX 10

int main() {

  int   i, j, n;

  int mat[MAX][MAX], min_gl, min_sp;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

for(i=0;i<n;i++){

for(j=0;j<n;j++){

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

    }

  }

printf("\nUnesena je matrica:\n\n");

for(i=0;i<n;i++){

printf("\n");

for(j=0;j<n;j++){

printf("\t%d",mat[i][j]);

}

}

  min_gl = mat[0][0]; //minimun je clan mat(0,0) pa krece od 1

  for (i = 1; i < n; i++) {

    if (mat[i][i] < min_gl) {

      min_gl = mat[i][i];

    }

  }

 

  min_sp = mat[0][n-1];

  for (i = 1; i < n; i++) {

    if (mat[i][n-i-1] < min_sp) {

      min_sp = mat[i][n-i-1];

    }

  }

 

  printf("\nNajmanji element na GLAVNOJ dijagonali je : %d",

         min_gl);

  printf("\nNajmanji element na SPOREDNOJ dijagonali je : %d",

         min_sp);

   printf("\nPROIZVOD najmanjih clanova dijagonala je : %d",

         min_gl*min_sp);     

  return 0;

}

     PRIMJER 10:

     Program ispisuje matricu, članove  iznad GLAVNE dijagonala i njihov proizvod .

//Ispisuje matricu,clanove iznad glavne dijagonale i njihov proizvod

#include <iostream>

#define dim 10

using namespace std;

int main()

{

int n,i,a[dim][dim],pr;

cout << " Upisi br.redova i kolona matrice nxn = ";

cin >> n;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

cout <<"   a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=n; j++)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

cout<<endl;

cout<<" Clanovi iznad glavne dijagonale su: "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=i+1; j<=n; j++)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

pr=1;

cout<<endl;

for(int i=1; i<=n; i++)

{

for (int j=i+1; j<=n; j++)

pr*=a[i][j];}

cout<<"Proizvod clanova iznad glavne dijagonale je: "<<pr<<endl;

cout<<endl;

return 0;

}