Leia valores inteiros para uma matriz M de dimensões L \times C. Depois dessa leitura calcule e apresente os seguintes dados:
O menor dos valores da matriz;

Passo 1

O enunciado pede que, depois de ler todos os valores inteiros de uma matriz M de dimensão L\times C, se calcule e apresente o menor dos valores da matriz.
Informações fornecidas:
  • A matriz tem dimensões \,L\times C, (ou seja, L linhas e C colunas).
  • Cada entrada da matriz é um número inteiro; vamos denotar a entrada da linha i e coluna j por M_{i,j}.
  • A tarefa específica: encontrar e apresentar o menor valor entre todos os L\cdot C elementos.
O que será entregue no final: o menor elemento da matriz (um único número inteiro).

Passo 2

Escolha do método (sem complicar): vamos usar uma varredura simples por todos os elementos — o método mais direto e confiável em prova. A ideia é manter uma variável que guarda o menor valor encontrado até agora e atualizá‑la sempre que aparecer um elemento menor.
Por que esse método?
  • É óbvio e fácil de implementar em papel ou em código.
  • Usa memória constante (apenas uma variável extra).
  • É rápido: percorre cada elemento exatamente uma vez.

Passo 3

Inicialização correta (dica prática muito importante): ao começar, inicialize a variável que guarda o mínimo com o primeiro elemento lido da matriz, isto é, com M_{1,1}.
Por que fazer assim?
  • Evita ter que escolher um “infinito positivo” ou um valor muito grande que possa dar problema com sinais.
  • Garante que a variável inicial é um valor real da matriz, então a comparação subsequente é válida para qualquer conjunto de inteiros (positivos, negativos ou zero).
Passo a passo da inicialização:
  • Leia M_{1,1}.
  • Faça \text{min} \leftarrow M_{1,1}.

Passo 4

A varredura: percorra linha por linha (ou coluna por coluna — tanto faz) e compare cada elemento com \text{min}. Sempre que encontrar um elemento menor, atualize \text{min}.
Esquema em pseudo‑algoritmo (escrito de forma clara para levar para a prova):
  • Leia L e C.
  • Para i=1 até L:
    • Para j=1 até C:
      • Leia M_{i,j}.
      • Se i=1 e j=1 então faça \text{min}\leftarrow M_{1,1} (inicialização).
      • Senão, se M_{i,j} < \text{min} então faça \text{min}\leftarrow M_{i,j}.
  • Ao final, \text{min} contém o menor elemento.
Observação prática: na implementação, muitas pessoas primeiro leem o primeiro elemento para inicializar e então já entram nos laços restantes a partir de j=2 ou i=1,j=2. Mas o esquema acima é explícito e seguro para a prova.

Passo 5

Explicando a comparação: cada vez que você lê um M_{i,j} após a inicialização, você testa a condição lógica
M_{i,j} < \text{min}.
Se a condição for verdadeira, substitui \text{min} por M_{i,j}. Isso garante que \text{min} guarda sempre o menor valor visto até aquele momento.

Passo 6

Exemplo concreto, rolando passo a passo (para fixar — faça igual na prova se tiver dúvida):
Considere L=2, C=3 e a matriz
M=\begin{pmatrix} 7 & -2 & 5\\[4pt] 3 & 0 & -4 \end{pmatrix}.
Varredura:
  • Leia M_{1,1}=7. Inicializa \text{min}\leftarrow 7.
  • Leia M_{1,2}=-2. Teste -2<7 é verdadeiro → \text{min}\leftarrow -2.
  • Leia M_{1,3}=5. Teste 5<-2 é falso → \text{min} continua -2.
  • Leia M_{2,1}=3. Teste 3<-2 é falso → \text{min} continua -2.
  • Leia M_{2,2}=0. Teste 0<-2 é falso → \text{min} continua -2.
  • Leia M_{2,3}=-4. Teste -4<-2 é verdadeiro → \text{min}\leftarrow -4.
Resultado final: \text{min}=-4, que é o menor elemento da matriz do exemplo.]

Passo 7

Casos extremos e atenção:
  • Se L=0 ou C=0 então a matriz não tem elementos e não existe um menor valor definido. Em provas normais isso não ocorre, mas se acontecer você deve declarar que não há elementos ou que a operação é inválida.
  • Se houver valores negativos, zero e positivos, o método continua funcionando normalmente (não depende do sinal).
  • Seja cuidadoso ao ler a entrada na ordem correta para não confundir índices.

Passo 8

Complexidade (só para você entender o custo, útil se a prova pedir análise):
  • Número de comparações de valores: exatamente L\cdot C - 1 (porque o primeiro elemento apenas inicializa).
  • Complexidade de tempo: \mathcal{O}(L\cdot C).
  • Espaço adicional: \mathcal{O}(1) (apenas a variável \text{min} além da leitura corrente).

Passo 9

Dicas rápidas para a prova (motivação amiga):
  • No enunciado, procure já saber se L e C são pelo menos 1. Se sim, inicialize com M_{1,1} e varra.
  • Escreva o passo de inicialização claramente no seu rascunho — isso evita erro comum de comparar com uma constante aleatória.
  • Se tiver que escrever código, faça o loop aninhado do jeito mais direto. Se tiver que descrever em palavras, explique a inicialização e a varredura como fizemos.

Resposta

\displaystyle \min_{1\le i\le L,\;1\le j\le C} M_{i,j}

Exercícios relacionados