Faça um algoritmo que leia 20 números e, ao final, escreva quantos estão entre 0 e 100.
Passo 1
O enunciado pede que a gente construa um algoritmo que leia
números e, ao final, escreva quantos desses números estão entre
e
.
Informações dadas e decisão de interpretação que vou adotar (clarificando porque enunciados às vezes são ambíguos):
Informações dadas e decisão de interpretação que vou adotar (clarificando porque enunciados às vezes são ambíguos):
- Ler exatamente
valores de entrada (um por vez). - Contar quantos desses valores satisfazem a condição "entre
e ". - Vou considerar "entre
e " como inclusivo, ou seja, valores tais que . (Se seu professor pedir exclusivo, basta trocar a condição para .)
Passo 2
Definição das variáveis que o algoritmo vai usar (e o porquê):
-
: variável inteira que guarda quantos números já satisfazem a condição. Inicialmente . Explicação didática: um contador é uma variável que usamos para acumular uma quantidade — sempre que encontramos um número que “vale”, aumentamos esse contador em uma unidade. -
: índice do laço que percorre as leituras de até . Explicação didática: serve só para repetir a ação de ler um número vezes; muitas linguagens têm laços que usam esse índice. -
: variável que armazena o número lido em cada iteração.
Passo 3
Estrutura lógica do algoritmo (alto nível), passo a passo, explicando conceitos:
- Inicializar
. Por que? Porque antes de ler qualquer número não há valores válidos contados. - Repetir o seguinte bloco
vezes (laço): ler um número e testar se ele está no intervalo desejado; se estiver, incrementar o . Explicação didática do laço: um laço (loop) é uma instrução que repete algo várias vezes; aqui queremos repetir a ação “ler um número e testar” exatamente vezes. - Ao terminar as
iterações, escrever (mostrar) o valor de .
Detalhe sobre a condição: o teste que usamos é uma expressão booleana que avalia para verdadeiro ou falso. No nosso caso a condição é
. Em linguagens que não aceitam a cadeia
de uma vez, escreve-se como a conjunção
.
Passo 4
Pseudocódigo completo e explicado linha a linha. Vou escrever um pseudocódigo simples (fácil de transformar em qualquer linguagem) e explicar cada linha:
Pseudocódigo:
Explicação de cada linha:
-
: inicializa o contador em zero. -
: inicio do laço que vai repetir 20 vezes. Aqui percorre de a . -
: lê um número da entrada e guarda em . Pode ser inteiro ou real; o algoritmo funciona para ambos. -
: testa se o número está entre e , inclusive. -
: se o teste for verdadeiro, acrescenta ao contador. -
: depois do laço, imprime o total encontrado.]
Passo 5
Exemplo prático (passo a passo de uma execução pequena) para fixar a ideia:
Suponha que as primeiras leituras sejam (apenas um exemplo):
. Vou mostrar como o
varia:
Suponha que as primeiras
- ler
: teste é falso → . - ler
: teste é verdadeiro → . - ler
: verdadeiro → . - ler
: falso → . - ler
: verdadeiro → . - ler
: falso → . - ler
: verdadeiro → . - ler
: verdadeiro → .
No final dasleituras, você imprime o valor acumulado (no exemplo parcial, depois de 8 leituras).
Passo 6
Observações úteis para a prova e variantes rápidas (dicas práticas):
- Se o enunciado exigir “entre
e exclusive”, troque a condição para . - Se quiser aceitar apenas inteiros, antes de testar você pode verificar se
é inteiro (dependendo da linguagem). Porém, a lógica do contador não muda. - Complexidade: algoritmo é
em termos práticos porque é constante; ou seja, muito rápido. - Em prova, escreva claramente: inicializa contador, faça laço de
a , leia, teste, incremente, ao final escreva contador — avaliador quer ver esses passos.