1
resposta

Aula 5 resposta Estrutura de Dados. Pergunta 8

8- Para uma seleção de produtos alimentícios, precisamos separar o conjunto de IDs dados por números inteiros, sabendo que os produtos com ID par são doces e os com ID ímpar são amargos. Monte um código que colete 10 IDs. Depois, calcule e mostre a quantidade de produtos doces e amargos.

lista_de_produtos = []
doces = 0
amargos = 0

for i in range (1,10):
  id_produto = int(input('Digite o ID do produto: '))
  lista_de_produtos.append(id_produto)
  if id_produto % 2==0:
    doces +=1
  else:
      amargos +=1
print(f'Produtos doces: {doces},produtos amargos: {amargos}')

Digite o ID do produto: 4
Digite o ID do produto: 50
Digite o ID do produto: 15
Digite o ID do produto: 7
Digite o ID do produto: 29
Digite o ID do produto: 41
Digite o ID do produto: 54
Digite o ID do produto: 22
Digite o ID do produto: 63
Produtos doces: 4,produtos amargos: 5
1 resposta

Boa tarde Fabiola! Tudo bem?

Quando trabalhamos com a função range(), devemos ter em mente que o parâmetro de início (primeiro parâmetro) é inclusivo, ou seja ele é incluído no momento em que o intervalo é criado. Já o parâmetro fim (segundo parâmetro), ele é exclusivo, ou seja, ele não é incluído no momento em que o intervalo é criado.

Dessa forma, no seu código, para que seja coletado 10 ID devemos passar para a função range() o ponto inicial 1 e o final 11. Assim o Python vai contar de 1 até 10, ignorando o último número (11), como apresentado abaixo:

for i in range(1,11):

Código completo com a mudança aplicada

lista_de_produtos = []
doces = 0
amargos = 0

for i in range(1,11):
  id_produto = int(input('Digite o ID do produto: '))
  lista_de_produtos.append(id_produto)
  if id_produto % 2==0:
    doces +=1
  else:
      amargos +=1
print(f'Produtos doces: {doces},produtos amargos: {amargos}')

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

Caso este post tenha lhe ajudado, por favor, marcar como solucionado