Ir ao conteúdo

Posts recomendados

Postado

Pessoal, eu de novo aqui. Estou tendo muito dificuldade nesse tópico de matrizes em Linguagem C. Não sei se é erro de raciocínio ou de estrutura no programa. Estou fazendo uma matriz 2x2 para o usuário preencher, meu objetivo é saber quantos dos números preenchidos são pares e a posição dos que são maiores que 5.

Fiz até a parte para saber se é par, conforme o código abaixo:

#include <stdio.h>
#include <limits.h>
int main()
{
    int m[2][2] = {0}   ,contadorpar, i= 0,j = 0,soma;
  
  
  Acho que o problema seja nessa parte aqui:
  
  for(i=0;i<2;i++){

for(j=0;j<2;j++){
	if(m[i][j]%2==0){
		contadorpar=m[i][j];
		
	}
  printf("O numero de numeros pares e igual a %d ",contadorpar);

Não consegui fazer a parte do par para prosseguir. Inclusive se puderem me dar dicas para isso da posição dos maiores de 5.

Se alguém puder me ajudar eu agradeço imensamente.

  • Curtir 1
Postado

@Vitor1233 Somar o conteúdo de uma posição da matriz ao contador de pares não faz sentido, e para exibir a posição dos valores maiores que 5 basta acrescentar outro if e exibir i e j. E faltou inicializar os valores da matriz.

#include <stdio.h>

int main(void) {
    int m[2][2] = {{3, 6}, {8, 3}};
    int contadorpar = 0;
    printf("Posicao dos maiores que 5: ");
    for (int i = 0; i < 2; i++){
        for (int j = 0; j < 2; j++){
            if (m[i][j] % 2 == 0)
                contadorpar++;
            if (m[i][j] > 5)
                printf("m[%d, %d] ", i, j);
        }
    }
    printf("\n\nO numero de numeros pares e igual a %d.\n",contadorpar);
    return 0;
}

 

Postado

@Vitor1233 É só ler os valores.

#include <stdio.h>

int main(void) {
    int m[2][2];
    int contadorpar = 0;
    for (int i = 0; i < 2; i++){
        for (int j = 0; j < 2; j++){
            printf("Digite o valor para m[%d][%d]: ", i, j);
            scanf("%i", &m[i][j]);
            if (m[i][j] % 2 == 0)
                contadorpar++;
        }
    }
    printf("\nO numero de numeros pares e igual a %d.\n",contadorpar);
    printf("\nPosicao dos maiores que 5: ");
    for (int i = 0; i < 2; i++){
        for (int j = 0; j < 2; j++){
            if (m[i][j] > 5)
                printf("m[%d][%d] ", i, j);
        }
    }

    return 0;
}

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!