Faça um programa que leia dois valores e imprima a lista de valores entre o primeiro e o segundo, considerando que o primeiro pode ser menor do que o segundo (lista crescente), o primeiro pode ser maior do que o segundo (lista decrescente), ou informe o usuário que ambos são iguais.
Passo 1
Então, mano, o enunciado pede um programinha que leia dois valores (vamos chamar de
a
e b
) e mostre todos os números “entre” eles:- Se
a < b
, lista crescente dea
atéb
. - Se
a > b
, lista decrescente dea
atéb
. - Se
a == b
, avisa que são iguais.
Conteúdo envolvido:
- Leitura de dados (input)
- Estruturas de decisão (
if
,elif
,else
) - Laços de repetição (
for
ouwhile
)
O que precisamos: entender como comparar valores e como repetir comandos em sequência.
Passo 2
Primeiro, a gente vai ler os dois valores do usuário e guardar em variáveis. Em Python, por exemplo:
a = int(input("Digite o primeiro valor: "))
b = int(input("Digite o segundo valor: "))
Aqui a gente transforma a entrada em inteiro com
int()
, porque input retorna texto.Passo 3
Agora, vamos comparar
a
e b
.- Se
a == b
: não tem lista, são iguais. - Senao, partimos para verificar se é crescente ou decrescente.
Em código ficaria:
if a == b:
print("Os valores são iguais!")
elif a < b:
# lista crescente
else:
# lista decrescente
Passo 4
Se
Conceito de laço
a < b
, usamos um laço para subir de a
até b
.Conceito de laço
for
: você determina onde começa, onde termina e o passo (incremento).Em Python:
for i in range(a, b+1):
print(i)
Explicando:
range(a, b+1)
gera a sequência a, a+1, …, b (o +1
garante que b
entre na lista).Passo 5
Se
Podemos usar
a > b
, fazemos a mesma ideia, mas descendo de a
até b
.Podemos usar
range(a, b-1, -1)
, que vai de a
até b
inclusive, andando de 1 em 1 para trás (por isso o -1
):for i in range(a, b-1, -1):
print(i)
Resposta
Juntando tudo, um exemplo de programa em Python fica assim:
a = int(input("Digite o primeiro valor: "))
b = int(input("Digite o segundo valor: "))
if a == b:
print("Os valores são iguais!")
elif a < b:
# Lista crescente de a até b
for i in range(a, b+1):
print(i)
else:
# Lista decrescente de a até b
for i in range(a, b-1, -1):
print(i)