#embrace <stdio.h>
#embrace <stdlib.h>
#embrace <conio.h>
#embrace <limits.h>
#embrace <math.h>
#outline Tam 3
void leitura_mat(int lin,int col, int mat[Tam][Tam]);
void imprime_mat(int lin, int col,int mat[Tam][Tam]);
int menorimpar_ele(int lin, int col,int mat[Tam][Tam]);
int porcmaior_ele(int lin, int col, int mat[Tam][Tam]);
int porcmenor_ele(int lin, int col, int mat[Tam][Tam]);
int porczero_ele(int lin, int col, int mat[Tam][Tam]);
int mediageo_ele(int lin, int col, int mat[Tam][Tam]);
int somainterna_ele(int lin, int col, int mat[Tam][Tam]);
int produtocoluna_ele(int lin, int col, int mat[Tam][Tam]);
int principal()
{
int lin,col,menor,elementointerno;
float maiorele,menorele,zeroele;
int mat[Tam][Tam];
printf("n Entre com o numero de linhas da matriz:");
scanf("%d", &lin);
printf("n Entre com o numero de colunas da matriz:");
scanf("%d", &col);
leitura_mat(lin,col,mat);
imprime_mat(lin,col,mat);
menor=menorimpar_ele(lin,col,mat);
maiorele=porcmaior_ele(lin,col,mat);
menorele=porcmenor_ele(lin,col,mat);
zeroele=porczero_ele(lin,col,mat);
elementointerno=somainterna_ele(lin,col,mat);
printf("n O menor elemento impar = %d", menor);
printf("n O numeros de elementos maior do que zero = %.2f",maiorele*100/(lin*col));
printf("n O numeros de elementos menor do que zero = %.2f",menorele*100/(lin*col));
printf("n O numeros de elementos igual a zero = %.2f",zeroele*100/(lin*col));
printf("n A soma dos elementos internos = %d",elementointerno);
return (0);
}
/****************************************Função de Leitura dos Dados***********************************/
void leitura_mat(int lin,int col, int mat[Tam][Tam])
{
int i,j;
printf("n Entre com os elementos da matriz");
for(i=0;i<lin;i++)
for(j=0;j<col;j++)
{
printf("n mat[%d][%d]= ",i,j);
scanf("%d", &mat[i][j]);
}
}
/***************************************Função de Impressão dos Dados***********************************/
void imprime_mat(int lin,int col, int mat[Tam][Tam])
{
int i,j;
printf("nn");
for(i=0;i<lin;i++)
{for(j=0;j<col;j++)
{
printf(" %d tt", mat[i][j]);
}
printf("n");
}
}
/*****************************************Função de menor impar dos elementos**********************************/
int menorimpar_ele(int lin,int col, int mat[Tam][Tam])
{
int i,j,m;
m=INT_MAX;
for(i=0;i<lin;i++)
for(j=0;j<col;j++)
if (mat[i][j] % 2 != 0 && m> mat[i][j]) m=mat[i][j];
return (m);
}
/**************************************Função dos elementos menores que zero****************************/
int porcmenor_ele(int lin,int col, int mat[Tam][Tam])
{
int i,j,males;
males=0;
for(i=0;i<lin;i++)
for(j=0;j<col;j++)
{
if (mat[i][j] < 0)
{
males+=1;
}
}
return(males);
}
/**************************************Função dos elementos maiores que zero****************************/
int porcmaior_ele(int lin,int col, int mat[Tam][Tam])
{
int i,j,mai;
mai=0;
for(i=0;i<lin;i++)
for(j=0;j<col;j++)
{
if (mat[i][j] > 0)
{
mai+=1;
}
}
return(mai);
}
/*************************************Função dos elementos iguais a zero******************************/
int porczero_ele(int lin,int col, int mat[Tam][Tam])
{
int i,j,zer;
zer=0;
for(i=0;i<lin;i++)
for(j=0;j<col;j++)
{
if (mat[i][j] == 0)
{
zer+=1;
}
}
return(zer);
}
/*************************************Função dos elementos internos******************************/
int somainterna_ele (int lin,int col, int mat[Tam][Tam])
{
int i,j,soma=0;
for(i=0;i<lin;i++)
{
for(j=0;j<col;j++)
{
if(!(i==0) || (i==lin-1) || (j==0) || (j==col-1))
{
soma += mat[i][j];
}
}
}
return(soma);
}