1
resposta

[Dúvida] Questão 4 Aula 5

Fiz a questão de modo que se o número digitado for par, ele será desconsiderado, consegui utilizando o While, porém com for não consegui fazer de modo que seja inserido 5 número. O Segundo código é que utilizei o for está logo abaixo do código com While, poderia analisar e me explicar como resolver. lista_impares = []

i = 0 while i < 5: numero = int(input('Digite um numero inteiro e impar: ')) if numero % 2 == 0: print('Este numero não é impar.') elif numero % 2 != 0: lista_impares.append(numero) i += 1 print(f'Lista de números invertida:{lista_impares[::-1]}')

lista_impares = []

for i in range (0,5): numero = int(input('Digite um numero inteiro e impar: ')) if numero % 2 == 0: print('Este numero não é impar.') elif numero % 2 != 0: lista_impares.append(numero) print(f'Lista de números invertida:{lista_impares[::-1]}')

1 resposta

O problema do seu código com for é que ele executa exatamente 5 vezes, independentemente se o número digitado for par e descartado, aí por isso faz com que você não consiga garantir que a lista tenha 5 números ímpares. A solução é usar um contador separado para controlar quantos números ímpares já foram adicionados. Assim, você pode continuar pedindo números até ter exatamente 5 ímpares.