Showing posts with label Matrice. Show all posts
Showing posts with label Matrice. Show all posts

Friday, November 7, 2014

5# Matrice full unos ispis min max dijagonala suma prosek

// Napisati program koji unosi,ispisuje kvadratnu matricu preko funkcija i pokazivaca
#include <stdio.h>
#include <conio.h>
#define mN 3
#define mM 3
int sah_tabla[mN][mM];

 void matrica_unos(int mat[][mM],int n,int m);


  void matrica_ispis(int mat[][mM],int n,int m);
  void matrica_mesto(int mat[][mM],int n, int m,int x,int y);
  //dijagonale
  void matrica_ispis_glavne_dijagonale(int mat[][mM],int n);
  void matrica_ispis_sporedne_dijagonale(int mat[][mM],int n);
  // horizontala vertikala
  void matrica_ispis_horizontalne_sredine(int mat[][mM],int n,int m);
  void matrica_ispis_vertikalne_sredine(int mat[][mM],int n,int m);
  //max min
  int matrica_min_element(int mat[][mM],int n,int m);
  int matrica_max_element(int mat[][mM],int n,int m);
  //sortiranje
  void matrica_sort_up(int mat[][mM],int n,int m);
  void matrica_sort_down(int mat[][mM],int n,int m);

  //statistika
  int matrica_suma(int mat[][mM],int n,int m);
  float  matrica_prosek(int mat[][mM],int n,int m);

 main(){
  printf("Unesi cele brojeve  matrice %dx%d\n",mN,mM);

  matrica_unos(sah_tabla,mN,mM);
  printf("\n Ispis matrice \n");
  matrica_ispis(sah_tabla,mN,mM);

  printf("\n Ispis kordinate 2,2 \n");
  matrica_mesto(sah_tabla,mN,mM,2,2);
   printf("\n glavna diajgonala \n");
  matrica_ispis_glavne_dijagonale(sah_tabla,mN);
   printf("\n sporedna dijagonala \n");
  matrica_ispis_sporedne_dijagonale(sah_tabla,mN);

   printf("\n vertikalna sredina \n");
  matrica_ispis_vertikalne_sredine(sah_tabla,mN,mM);
   printf("\n horizontalna sredina \n");
  matrica_ispis_horizontalne_sredine(sah_tabla,mN,mM);
  printf("\n Minimalni element matrice %d \n",matrica_min_element(sah_tabla,mN,mM));
  printf("\n Maksimalni element matrice %d \n",matrica_max_element(sah_tabla,mN,mM));

  // sortiranje matrice up
   matrica_sort_up(sah_tabla,mN,mM);
   printf("\n Ispis sortirane matrice sort up matrice \n");
  matrica_ispis(sah_tabla,mN,mM);

  // sortiranje matrice down
   matrica_sort_down(sah_tabla,mN,mM);
   printf("\n Ispis sortirane matrice sort down matrice \n");
   matrica_ispis(sah_tabla,mN,mM);
   printf("Suma svih elemenata matrice %d\n",matrica_suma(sah_tabla,mN,mM));
   printf("Prosek svih elemenata matrice %f\n",matrica_prosek(sah_tabla,mN,mM));
 
 getch();  
 }

 void matrica_unos(int mat[][mM],int n,int m){
   for(int i=0; i<n; i++){
      for(int j=0; j<m; j++){
          printf("Niz[%d][%d]=",i,j); scanf("%d", &mat[i][j]);
      }
   }
 }

  void matrica_ispis(int mat[][mM],int n,int m){
   for(int i=0; i<n; i++){
      for(int j=0; j<m; j++){
          printf("mat[%d][%d]=%d\n",i,j,mat[i][j]);
      }
   }
 }

 void matrica_mesto(int mat[][mM],int n, int m,int x,int y){
     if (x>=0 && x<n && y>=0 && y<m){
        printf("[%d][%d]=%d\n",x,y,mat[x][y]);
     }
     else {
           printf ("Izvan domena x=%d ,y=%d",x,y);
          }
   }
 
   void matrica_ispis_glavne_dijagonale(int mat[][mM],int n){
        for(int i=0; i<n; i++){
          printf("mat[%d][%d]=%d\n",i,i,mat[i][i]);
          }
   }
 
   void matrica_ispis_sporedne_dijagonale(int mat[][mM],int n){
    for(int i=0; i<n; i++){
          printf("mat[%d][%d]=%d\n",i,n-1-i,mat[i][n-1-i]);
          }
   }
   void matrica_ispis_horizontalne_sredine(int mat[][mM],int n,int m){
    for(int i=0; i<m; i++){
          printf("mat[%d][%d]=%d\n",(int)(n/2),i,mat[(int)(n/2)][i]);
          }
   }
    void matrica_ispis_vertikalne_sredine(int mat[][mM],int n,int m){
    for(int i=0; i<n; i++){
          printf("mat[%d][%d]=%d\n",i,(int)(m/2),mat[i][(int)(m/2)]);
          }
   }
 
    int matrica_min_element(int mat[][mM],int n,int m){
        int min=mat[0][0];
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
                  if(min>mat[i][j]) min=mat[i][j];
         }
        }
         return min;
    }
 
     int matrica_max_element(int mat[][mM],int n,int m){
        int max=mat[0][0];
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
                  if(max<mat[i][j]) max=mat[i][j];
         }
        }
         return max;
    }
 
    void matrica_sort_up(int mat[][mM],int n,int m){
        //if(min>mat[i][j]) min=mat[i][j];
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
             for(int p=i; p<n; p++){
              for(int q=j; q<m; q++){
                       
                 if ( mat[i][j]>mat[p][q]) {
                      //mat[i][j]=-1;
                      int korpa=mat[i][j];
                     mat[i][j]=mat[p][q];
                      mat[p][q]=korpa;
                      }
              }
              }  
         }
        }
    }
 
    void matrica_sort_down(int mat[][mM],int n,int m){
        //if(min>mat[i][j]) min=mat[i][j];
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
             for(int p=i; p<n; p++){
              for(int q=j; q<m; q++){
                       
                 if ( mat[i][j]<mat[p][q]) {
                      //mat[i][j]=-1;
                      int korpa=mat[i][j];
                     mat[i][j]=mat[p][q];
                      mat[p][q]=korpa;
                      }
              }
              }  
         }
        }
    }
 
     int  matrica_suma(int mat[][mM],int n,int m){
        int suma=0;
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
                 suma+=mat[i][j];
         }
        }
         return suma;
     }
   
   float matrica_prosek(int mat[][mM],int n,int m){
         return ((float)matrica_suma(mat,n,m))/(n*m);
   }

Tuesday, December 10, 2013

#5 Matrice preko pokazivaca

// Napisati program koji unosi,ispisuje kvadratnu matricu preko funkcija i pokazivaca
#include <stdio.h>
#include <conio.h>
#define mN 3
#define mM 3
int sah_tabla[mN][mM];

 void matrica_unos(int mat[][mM],int n,int m);
 

  void matrica_ispis(int mat[][mM],int n,int m);
  void matrica_mesto(int mat[][mM],int n, int m,int x,int y);
 
  void matrica_ispis_glavne_dijagonale(int mat[][mM],int n);
  void matrica_ispis_sporedne_dijagonale(int mat[][mM],int n);
 
  void matrica_ispis_horizontalne_sredine(int mat[][mM],int n,int m);
  void matrica_ispis_vertikalne_sredine(int mat[][mM],int n,int m);
 
  int matrica_min_element(int mat[][mM],int n,int m);
  int matrica_max_element(int mat[][mM],int n,int m);
 
  void matrica_sort_up(int mat[][mM],int n,int m);
  void matrica_sort_down(int mat[][mM],int n,int m);

 main(){
  printf("Unesi cele brojeve  matrice %dx%d\n",mN,mM);

  matrica_unos(sah_tabla,mN,mM);
  printf("\n Ispis matrice \n");
  matrica_ispis(sah_tabla,mN,mM);

  printf("\n Ispis kordinate 2,2 \n");
  matrica_mesto(sah_tabla,mN,mM,2,2);
   printf("\n glavna diajgonala \n");
  matrica_ispis_glavne_dijagonale(sah_tabla,mN);
   printf("\n sporedna dijagonala \n");
  matrica_ispis_sporedne_dijagonale(sah_tabla,mN);
 
   printf("\n vertikalna sredina \n");
  matrica_ispis_vertikalne_sredine(sah_tabla,mN,mM);
   printf("\n horizontalna sredina \n");
  matrica_ispis_horizontalne_sredine(sah_tabla,mN,mM);
  printf("\n Minimalni element matrice %d \n",matrica_min_element(sah_tabla,mN,mM));
  printf("\n Maksimalni element matrice %d \n",matrica_max_element(sah_tabla,mN,mM));
 
  // sortiranje matrice up
   matrica_sort_up(sah_tabla,mN,mM);
   printf("\n Ispis sortirane matrice sort up matrice \n");
  matrica_ispis(sah_tabla,mN,mM);
 
  // sortiranje matrice down
   matrica_sort_down(sah_tabla,mN,mM);
   printf("\n Ispis sortirane matrice sort down matrice \n");
   matrica_ispis(sah_tabla,mN,mM);
 getch();    
 }

 void matrica_unos(int mat[][mM],int n,int m){
   for(int i=0; i<n; i++){
      for(int j=0; j<m; j++){
          printf("Niz[%d][%d]=",i,j); scanf("%d", &mat[i][j]);
      }
   }
 }

  void matrica_ispis(int mat[][mM],int n,int m){
   for(int i=0; i<n; i++){
      for(int j=0; j<m; j++){
          printf("mat[%d][%d]=%d\n",i,j,mat[i][j]);
      }
   }
 }

 void matrica_mesto(int mat[][mM],int n, int m,int x,int y){
     if (x>=0 && x<n && y>=0 && y<m){
        printf("[%d][%d]=%d\n",x,y,mat[x][y]);
     }
     else {
           printf ("Izvan domena x=%d ,y=%d",x,y);
          }
   }
 
   void matrica_ispis_glavne_dijagonale(int mat[][mM],int n){
        for(int i=0; i<n; i++){
          printf("mat[%d][%d]=%d\n",i,i,mat[i][i]);
          }
   }
 
   void matrica_ispis_sporedne_dijagonale(int mat[][mM],int n){
    for(int i=0; i<n; i++){
          printf("mat[%d][%d]=%d\n",i,n-1-i,mat[i][n-1-i]);
          }
   }
   void matrica_ispis_horizontalne_sredine(int mat[][mM],int n,int m){
    for(int i=0; i<m; i++){
          printf("mat[%d][%d]=%d\n",(int)(n/2),i,mat[(int)(n/2)][i]);
          }
   }
    void matrica_ispis_vertikalne_sredine(int mat[][mM],int n,int m){
    for(int i=0; i<n; i++){
          printf("mat[%d][%d]=%d\n",i,(int)(m/2),mat[i][(int)(m/2)]);
          }
   }
 
    int matrica_min_element(int mat[][mM],int n,int m){
        int min=mat[0][0];  
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
                  if(min>mat[i][j]) min=mat[i][j];
         }
        }
         return min;
    }
   
     int matrica_max_element(int mat[][mM],int n,int m){
        int max=mat[0][0];  
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
                  if(max<mat[i][j]) max=mat[i][j];
         }
        }
         return max;
    }
   
    void matrica_sort_up(int mat[][mM],int n,int m){
        //if(min>mat[i][j]) min=mat[i][j];
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
             for(int p=i; p<n; p++){
              for(int q=j; q<m; q++){
                       
                 if ( mat[i][j]>mat[p][q]) {
                      //mat[i][j]=-1;
                      int korpa=mat[i][j];
                     mat[i][j]=mat[p][q];
                      mat[p][q]=korpa;
                      }
              }
              }    
         }
        }
    }
   
    void matrica_sort_down(int mat[][mM],int n,int m){
        //if(min>mat[i][j]) min=mat[i][j];
        for(int i=0; i<n; i++){
         for(int j=0; j<m; j++){
             for(int p=i; p<n; p++){
              for(int q=j; q<m; q++){
                       
                 if ( mat[i][j]<mat[p][q]) {
                      //mat[i][j]=-1;
                      int korpa=mat[i][j];
                     mat[i][j]=mat[p][q];
                      mat[p][q]=korpa;
                      }
              }
              }    
         }
        }
    }

Wednesday, February 13, 2013

#4 Matrica 3x3 unos ispis ponavljanje

#include<stdio.h>
#include<conio.h>


main(){
 // matrica 3x3 ponavljanje gradiva
 int sah[3][3];
 printf("Printf unesi te elemente matrice 3x3\n");
 for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=",i,j);scanf("%d",&sah[i][j]);printf("\n");   
     }   
 }

 printf("Printf ispis elemenata matrice 3x3 \n");
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=%d \n",i,j,sah[i][j]);   
     }   
 }   
 getch();     
}

#5 Matrica 3x3 najveci glavna i sporedna diagonala

#include<stdio.h>
#include<conio.h>


main(){
 // matrica 3x3 ponavljanje gradiva
 int sah[3][3];
 int suma=0;
 int najveci;

 printf(" Unesite elemente matrice 3x3\n");
 for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=",i,j);scanf("%d",&sah[i][j]);printf("\n");   
     }   
 }
 printf("Printf ispis elemenata matrice 3x3 \n");
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=%d \n",i,j,sah[i][j]);   
     }   
 }

  printf("Racunanje sume svih elemenata matrice 3x3 \n");
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
         suma=suma+sah[i][j];
     }   
 }     
 printf("\n Suma=%d \n",suma);

   printf("pronalazenje naveceg elmenta matrice 3x3 \n");
   najveci=sah[0][0]; //postavi da je najveci trenutno prvi element
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
         if (najveci<sah[i][j]){
         najveci=sah[i][j];                      
         }
     }   
 }     
printf("\n Najveci je=%d \n",najveci);

printf("Ispis elemenata glavne dijagonale matrice 3x3 \n");
 
  for (int i=0;i<3;i++){
     printf("sah[%d][%d]=%d \n",i,i,sah[i][i]);                          
     }  


 printf("Ispis elemenata sporedne dijagonale matrice 3x3 \n");
 
  for (int i=0;i<3;i++){
     printf("sah[%d][%d]=%d \n",i,3-1-i,sah[i][3-1-i]);                          
         }      


 getch();     
}

Wednesday, December 21, 2011

#5 Matrice sortiranje preko niza

// matrice sortiranje
#include <stdio.h>
#include <conio.h>

int matrica[3][3];
int niz[9];
 // funkcije unos matrice
 void _unosMatrice(){
        for (int i=0;i<3;i++){
          for (int j=0;j<3;j++){
              printf("m[%d][%d]=",i,j); scanf("%d",&matrica[i][j]);
              }
          }
      }
 void _ispisMatrice(){
        for (int i=0;i<3;i++){
          for (int j=0;j<3;j++){
              printf("%d ",matrica[i][j]);
              }
              printf("\n");
          }
      }
 void _matricaUniz(){
      int k=0;
       for (int i=0;i<3;i++){
          for (int j=0;j<3;j++){
             niz[k]=matrica[i][j];
             k++;
              }
          }
      }
 void _nizuMatricu(){
      int k=0;
       for (int i=0;i<3;i++){
          for (int j=0;j<3;j++){
             matrica[i][j]=niz[k];
             k++;
              }
          }
      }
  void _ispisNiza(){
    for (int i=0;i<9;i++){
      printf("%d ",niz[i]);
    } 
     
      }
  void _nizMaliKaVelikom(){
       int burence=0;
        for (int i=0;i<9;i++){
          for (int j=i+1;j<9;j++){
            if (niz[i]>niz[j]){
                 burence=niz[i];
                 niz[i]=niz[j];
                 niz[j]=burence;              
            }
              }
          }
      }
      
  
     
     
 main(){
  
     // unesi matricu
     _unosMatrice();
     // novi red
     printf("\n");
     //ispis matrice
     _ispisMatrice();
     _matricaUniz();
      // novi red
     printf("ispis niza \n");
     _ispisNiza();
     printf("sortiranje i ispis \n");
     _nizMaliKaVelikom();
      printf("ispis sort  niza \n");
     _ispisNiza();
    
     _nizuMatricu();
     printf("ispis sort matrice \n");
     _ispisMatrice();
     getch();
}

Friday, January 21, 2011

#5 Matrica 3x3 rad sa diajgonalama, ispis,suma, najveci element dijagonale

#include<stdio.h>
#include<conio.h>


main(){
 // matrica 3x3 ponavljanje gradiva
 // Matrica rad sa elementima na dijaogonalama, ispis, suma, najveci element
 int sah[3][3];
 int suma=0;
 int najveci;
 int sumaGD=0; // suma glavne diajgonale
 int sumaSD=0; // suma sporedne dijagonale
 int najveciGD=0; //najveci element glavne dijagonale
 int najveciSD=0; //najveci element sporedne dijagonale

 printf(" Unesite elemente matrice 3x3\n");
 for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=",i,j);scanf("%d",&sah[i][j]);printf("\n");   
     }   
 }
 printf("Printf ispis elemenata matrice 3x3 \n");
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=%d \n",i,j,sah[i][j]);   
     }   
 }


printf("Ispis elemenata glavne dijagonale matrice 3x3 \n");
 
  for (int i=0;i<3;i++){
     printf("sah[%d][%d]=%d \n",i,i,sah[i][i]);                          
     }  


 printf("Ispis elemenata sporedne dijagonale matrice 3x3 \n");
 
  for (int i=0;i<3;i++){
     printf("sah[%d][%d]=%d \n",i,3-1-i,sah[i][3-1-i]);                          
         }
        
//suma glavne dijagonale
 
  for (int i=0;i<3;i++){
      sumaGD+=sah[i][i];                          
     }

printf("Suma elemenata glavne dijagonale 3x3  sumGD=%d\n\n",sumaGD);    

for (int i=0;i<3;i++){
      sumaSD+=sah[i][3-1-i];                          
     }

printf("Suma elemenata sporedne dijagonale 3x3  sumSD=%d\n\n",sumaSD); 

// postavljam da je najveci element prvi element matrice
 najveciGD=sah[0][0];
// suma sporedne dijagonale
  for (int i=0;i<3;i++){
      if (najveciGD<sah[i][i]) najveciGD=sah[i][i];                       
     }
printf("Najveci element glavne dijagonale 3x3  najveciGD=%d\n\n",najveciGD);  

// postavljam da je najveci element prvi u poslednjoj koloni  matrice
 najveciSD=sah[2][0];
// suma sporedne dijagonale
  for (int i=0;i<3;i++){
      if (najveciSD<sah[i][3-1-i]) najveciGD=sah[i][3-1-i];                       
     }
printf("Najveci element sporedne dijagonale 3x3  najveciGD=%d\n\n",najveciSD);

 getch();     
}

Wednesday, January 19, 2011

#4 Matrica 3x3 suma,naveci element ispis dijagonala

#include<stdio.h>
#include<conio.h>


main(){
 // matrica 3x3 ponavljanje gradiva
//Program za unos, ispis matrice 3x3, suma svih elemenata matrice, najveci element matrice, ispis glavne i sporedne dijagonale matrice 3x3
 int sah[3][3];
 int suma=0;
 int najveci;

 printf(" Unesite elemente matrice 3x3\n");
 for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=",i,j);scanf("%d",&sah[i][j]);printf("\n");  
     }  
 }
 printf("Printf ispis elemenata matrice 3x3 \n");
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=%d \n",i,j,sah[i][j]);  
     }  
 }

  printf("Racunanje sume svih elemenata matrice 3x3 \n");
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
         suma=suma+sah[i][j];
     }  
 }    
 printf("\n Suma=%d \n",suma);

   printf("pronalazenje naveceg elmenta matrice 3x3 \n");
   najveci=sah[0][0]; //postavi da je najveci trenutno prvi element
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
         if (najveci<sah[i][j]){
         najveci=sah[i][j];                     
         }
     }  
 }    
printf("\n Najveci je=%d \n",najveci);

printf("Ispis elemenata glavne dijagonale matrice 3x3 \n");
 
  for (int i=0;i<3;i++){
     printf("sah[%d][%d]=%d \n",i,i,sah[i][i]);                         
     } 


 printf("Ispis elemenata sporedne dijagonale matrice 3x3 \n");
 
  for (int i=0;i<3;i++){
     printf("sah[%d][%d]=%d \n",i,3-1-i,sah[i][3-1-i]);                         
         }     


 getch();    
}

#3 Matrica 3x3 unos ispis ponavljanje

#include<stdio.h>
#include<conio.h>


main(){
 // matrica 3x3 ponavljanje gradiva
 int sah[3][3];
 printf(" Unesite elemente matrice 3x3\n");
 for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=",i,j);scanf("%d",&sah[i][j]);printf("\n");  
     }  
 }

 printf("Printf ispis elemenata matrice 3x3 \n");
  for (int i=0;i<3;i++){
     for (int j=0;j<3;j++){
      printf("sah[%d][%d]=%d \n",i,j,sah[i][j]);  
     }  
 }  
 getch();    
}

Friday, December 17, 2010

#3 Visestruki niz- matrica 3x3

#include<stdio.h>
#include<conio.h>
main(){

int sah[3][3];

printf("Unesi te elemente matrice 3x3\n");
for (int i=0;i<3;i++){
    for (int j=0;j<3;j++){
      
        printf("sah[%d][%d]=",i,j);scanf("%d",&sah[i][j]);printf("\n");

    }
}
 printf("Ispis elemenata matrice \n");
 for (int m=0;m<3;m++){
    for (int n=0;n<3;n++){
      
        printf("sah[%d][%d]=%d \n",m,n,sah[m][n]);

    }
}
     
     getch()  ;
}