Informática, perguntado por patrickmicrolinslond, 3 meses atrás

O código abaixo representa um programa na linguagem em C cujo objetivo é escrever na tela os números que são divisíveis por 3 de uma matriz.
Entretanto no código está faltando a implementação da sub-rotina que faz a busca dos números divisíveis e escreve na tela. Deve ser escrito na tela a linha e a coluna da matriz que se encontra o número divisível por 3 bem como o próprio número, exemplo:

Número divisível por 3 encontrado na linha 1, coluna 1, numero 15
Número divisível por 3 encontrado na linha 1, coluna 2, numero 9

Importante: a coluna e a linha devem ser iniciadas do valor 1, diferente do vetor da linguagem C

​……….

Com base no contexto apresentado acima, considere o código a seguir e implemente a sub-rotina faltante:

#include

//Código que deve ser inserido aqui

int main(int argc, char const *argv[])
{
//Matriz com valores fixo para nao fazer a leitura
int matriz[5][5] = {{15,9,23,43,49},
{3,36,55,53,18},
{12,42,51,57,34},
{6,32,28,25,62},
{72,91,81,16,41}};

identificarDivisivelPor3(matriz);

return 0;
}

Envie a resposta no formato texto para correção.

Soluções para a tarefa

Respondido por lucasagostinhoalmeid
1

Resposta:

Note que não é preciso ler nenhum número, pois o enunciado já deixou os valores  dos elementos. Sendo assim, precisaremos da estrutura "For" para ler o indice[i] que está relacionado com a linha, e outra estrutura "For" para ler o índice [j] que está relacionado com a coluna. Cada vez que eu ler "For [i]"  e "For "[j]" o algoritmo irá analisar se os valores de cada elemento atende a minha condição "If" (o valor divido por 3 seja igual a zero, e não números fracionarios, por exemplo: 1,2132). Se a condição for verdadeira, logo eu imprimo, por meio do comando "Printf", o numero que atendeu a minha condição.

Explicação:

int main(){

int  mat [5][5] = {{15, 9, 23, 43, 49},

                         {3, 36, 55, 53, 18},

                         {12, 42, 51, 57, 34},

                         {6, 32, 28, 25, 62},

                         {72, 91, 81, 16, 41}};

   int i, j;

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

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

  if(mat[i][j] % 3 == 0){

   printf("Numero divisível por 3 encontrado na linha %d , coluna %d , numero %d  \n", i, j, mat[i][j]);

  }

 

 

 }

}

   return(0);

}

Perguntas interessantes