Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] exercício 1 (aula4)

n1 = int(input('Numero 1:'))
n2 = int(input('Numero 2:'))

if n1 < n2:
  for i in range(n1 + 1 , n2):
    print(i)
elif n1 > n2:
  for i in range (n2 + 1, n1):
    print(i)  
else:
  print('Os números são iguais!')

Qual a necessidade da soma de 1 na função range? testei sem e parece funcionar igualmente!

2 respostas
solução!

Olá Robson, tudo bem com você?

A soma de 1 na função range é necessária para garantir que o intervalo exclua os próprios números fornecidos pelo usuário e inclua apenas os números entre eles. Vamos detalhar isso com um exemplo, suponha que os números fornecidos sejam 3 e 7.

Primeiro cenário, sem a soma de 1, onde usamos range(n1, n2):

n1 = 3
n2 = 7
for i in range(n1, n2):
    print(i)

Resultado

3
4
5
6

Como podemos notar acima, o número 3 está incluído no resultado, o que não é desejado, já que queremos apenas os números entre os números fornecidos. Além disso, o número 7 não está incluído, pois range no Python é inclusivo no início e exclusivo no final.

Segundo cenário, com a soma de 1, onde usamos range(n1 + 1, n2):

n1 = 3
n2 = 7
for i in range(n1 + 1, n2):
    print(i)

Resultado

4
5
6

Aqui, os números 3 e 7 são excluídos, e somente os números entre eles (4, 5, 6) são impressos, que é o comportamento desejado.

Em resumo, a soma de 1 no range é, portanto, essencial para obter a sequência de números que estão estritamente entre os dois números fornecidos, excluindo os próprios números.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

uma aula! obrigado ficou muito claro