Análise da Questão de Programação
A questão apresenta um trecho de código em linguagem C destinado a imprimir a tabuada de um número inteiro fornecido pelo usuário. O código utiliza uma estrutura de repetição while.
Entendimento do Código
Para que a tabuada funcione corretamente (imprimindo de 1 a 10), o programa precisa controlar quantas vezes o loop vai rodar usando uma variável chamada contador.
O fluxo lógico ideal é:
- Inicialização: Antes de entrar no loop, a variável
contador precisa receber um valor inicial. Para uma tabuada padrão, começamos no 1. - Condição: O
while verifica se o contador é menor ou igual a 10. - Processamento: Calcula-se o resultado (
numero * contador). - Atualização: Dentro do loop, é obrigatório mudar o valor do
contador (incrementá-lo) para que a condição mude e o loop eventualmente termine.
Por que as outras opções estão incorretas?
| Alternativa | Linha 6 (Início) | Linha 10 (Fim) | Problema |
|---|
| A | contador=1 | contador=contador+1 | Lógica correta (pode ser duplicada na questão). |
| B | contador=0 | contador=contador+1 | Imprimiria a linha "0" (0 x N), geralmente indesejado em tabuadas escolares. |
| C | contador=1 | contador=contador+1 | Lógica correta. Inicia em 1 e avança passo a passo. |
| D | contador=1 | contador=contador-1 | Deixaria o contador menor (1, 0, -1...). Causaria loop infinito. |
| E | contador=10 | contador=contador+1 | Começaria no 10. Só imprimiria uma vez (ou nenhuma, dependendo da condição). |
Conclusão
Para garantir que a tabuada vá de 1 a 10, devemos:
- Inicializar a variável
contador com 1 na linha 6. - Somar 1 ao
contador a cada volta do loop na linha 10.
Isso corresponde à lógica descrita na alternativa C.
Alternativa C