Uma fábrica de enchimento de sumos precisa de comprar novas máquinas para uma das fases finais da sua produção. Antes da compra, o concelho de administradores decidiu mandar desenvolver uma simulação para aferir o nível da produção. A simulação consiste no enunciado descrito na Visão Geral, tendo em conta as instruções, implementação, pontuação e penalizações descritas neste documento. Crie um programa que permita etiquetar as caixas que estão no tapete rolante circular, colocando uma etiqueta nas caixas que já foram validadas. Se a caixa escolhida não estiver validada, deve ocorrer primeiro a validação e depois a etiquetagem.
Passo 1
Beleza, vamos resumir o que a questão está pedindo. Temos uma fábrica que produz sumos e quer atualizar suas máquinas. Antes de comprar, os administradores querem fazer uma simulação para ver como está a produção. A tarefa aqui é criar um programa que etiqueta as caixas que estão passando por um tapete rolante circular. Mas só vamos colocar etiqueta nas caixas que já foram validadas. Se a caixa que escolhermos ainda não foi validada, primeiro a gente valida ela e depois coloca a etiqueta. Para resolver isso, vamos precisar entender como representar as caixas no programa, como verificar se elas estão validadas e como etiquetá-las.
Passo 2
Primeiro, vamos pensar em como representar as caixas. Podemos usar uma lista (ou array) onde cada posição representa uma caixa no tapete rolante. Cada caixa pode ter dois estados: “validada” ou “não validada” e “etiquetada” ou “não etiquetada”. Podemos usar objetos ou dicionários para isso, mas para simplificar, vamos usar uma lista de tuplas onde cada tupla tem dois valores: o primeiro indica se está validada e o segundo se está etiquetada.
Passo 3
Agora, precisamos de uma função para validar uma caixa. Validar significa, basicamente, marcar a caixa como “validada”. Vamos criar uma função chamada
validar_caixa
que recebe o índice da caixa na lista e muda o primeiro valor da tupla para True
.def validar_caixa(caixa):
caixa[0] = True
Passo 4
Depois, precisamos de uma função para etiquetar uma caixa. Essa função vai verificar se a caixa está validada. Se estiver, coloca a etiqueta mudando o segundo valor da tupla para
True
. Se não estiver validada, primeiro chama a função de validar e depois etiqueta.def etiquetar_caixa(caixa):
if not caixa[0]:
validar_caixa(caixa)
caixa[1] = True
Passo 5
Agora, vamos criar o tapete rolante. Suponha que temos 10 caixas no tapete. Inicialmente, todas estão não validadas e não etiquetadas.
tapete_rolante = [[False, False] for _ in range(10)]
Passo 6
Por último, vamos etiquetar uma caixa específica. Vamos escolher a caixa de índice 3 (a quarta caixa, já que a lista começa em 0). Chamamos a função
etiquetar_caixa
passando essa caixa.etiquetar_caixa(tapete_rolante[3])
Resposta
Após executar o programa, a quarta caixa no tapete rolante estará validada e etiquetada. O estado dela será
[True, True]
.