Ir ao conteúdo
  • Cadastre-se

paridade de elementos de linha e coluna de matriz


Posts recomendados

algum anjo me ajuda com esse problema? tentei de varios jeitos mais nao consegui :confused:

 

Desenvolva um programa que gere uma matriz quadrada de ordem 10 preenchida com números
aleatórios entre 1 e 10. Considerando a matriz gerada, o programa deve verificar:
a. Se há linha(s) ou coluna(s) em que todos os elementos são pares – nesse caso, indique a(s)
linha(s) ou a(s) coluna(s);

b. Se a média dos elementos da diagonal principal é maior do que a média de todos os elementos
da matriz;
c. Se há mais elementos na primeira metade do intervalo (entre 1 e 5) ou na segunda (entre 6 e 10).

#include <stdio.h>
#include <time.h>
//*_________________________________________________*//

int main()
{
//*___________DISTRIBUIÇAO DA MATRIZ_________________*//
    int mtz[10][10],i,j;
srand(time(NULL));
for(i=0;i<10;i++){
    for(j=0;j<10;j++){
        mtz[i][j]= rand()%11;
    }
}
//*____________IMPRESSAO DA MATRIZ___________________*//
for(i=0;i<10;i++){
        printf(" \n\n ");
    for(j=0;j<10;j++){
        printf(" %d ",mtz[i][j]);
    }
}
//*___________MEDIA GERAL DA MATRIZ_________________*//
float mgm=0;

for(i=0;i<10;i++){
    for(j=0;j<10;j++){
       mgm += mtz[i][j];
       }
}
printf("\n\nMEDIA DA MATRIZ: %f\n",mgm/10);

//*___________MEDIA DA DIAGONAL PRINC_______________*//

int dp[10];
float mdp=0;
for(i=0;i<10;i++){
    dp[i]= mtz[i][i];
    mdp += dp[i];
    }
printf("\n\nMEDIA DA DIAGONAL PRINCIPAL: %f\n\n\n",mdp/10);

//*___________VERIFICAÇÃO MDP>MGM___________________*//
if(mdp>mgm){
    printf("MEDIA DA PRINCIPAL E MAIOR! \n");}
else{
    printf("MEDIA DE TODOS OS ELEMENTOS E MAIOR!\n");}

//*__________QUNTIDADE DE ELEMENTOS_________________*//

int pm=0;
for(i=0;i<5;i++){
    for(j=0;j<5;j++){
       pm += mtz[i][j];
       }
    }
printf("\n\nQUANTIDADE DOS ELEMENTOS PRIMEIRA METADE:  %d\n",pm);

int sm=0;
for(i=5;i<10;i++){
    for(j=5;j<10;j++){
       sm += mtz[i][j];
       }
    }
printf("\n\nQUANTIDADE DOS ELEMENTOS SEGUNDA METADE:  %d\n",sm);

//*VERIFICAÇÃO DA PARIDADE DAS LINHAS E DAS COLUNAS*//
int lp=0,cp=0;

for(i=0;i<10;i++){
    for(j=0;j<10;j++){
        if(mtz[i][j]%2==0){
            lp++;
        }       
    }
}
for(i=0;i<10;i++){
    for(j=0;j<10;j++){
        if(mtz[j][i]%2==0){
            cp++,
        } 
    }
}



    return 0;
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Primeiro precisa corrigir o preenchimento da matriz:

 

    //*___________DISTRIBUIÇAO DA MATRIZ_________________*//
    int mtz[10][10], i, j;
    srand(time(NULL));
    for (i = 0; i < 10; i++) {
        for (j = 0; j < 10; j++) {
            //Estava gerando números de 0 a 10,
            //corrigi pra gerar de 1 a 10:
            mtz[i][j] = rand() % 10 + 1; 
        }
    }

 

Quanto a verificação da paridade na linhas e colunas modifiquei assim, mas não posso testar o código agora, então verifique se funciona corretamente:

    //*VERIFICAÇÃO DA PARIDADE DAS LINHAS E DAS COLUNAS*//
    int lp = 0, cp = 0;

    for (i = 0; i < 10; i++) {
        lp = 0;
        for (j = 0; j < 10; j++) {
            if (mtz[i][j] % 2 == 0) {
                lp++;
            }
        }
        if (lp == 10)
            printf("OS NUMEROS DA LINHA %d SAO PARES\n", i);
    }
    for (i = 0; i < 10; i++) {
        cp = 0;
        for (j = 0; j < 10; j++) {
            if (mtz[j][i] % 2 == 0) {
                cp++,
            }
        }
        if (cp == 10)
            printf("OS NUMEROS DA COLUNA %d SAO PARES\n", i);
    }

 

  • Curtir 3
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...