1
resposta

[Reclamação] Não concordo com a alternativa correta.

Implementar um loop que percorra a lista de produtos e, para cada produto, verificar o preço atual. Se já for maior ou igual a R$ 10.000,00, mantê-lo nesse valor. Caso contrário, aumentar o preço em 5% e, se após o reajuste ultrapassar R$ 10.000,00, ajustá-lo para exatamente R$ 10.000,00. A condição de parada do loop será quando todos os produtos tiverem seus preços ajustados.

"Se já for maior ou igual a R$ 10.000,00, mantê-lo nesse valor." - isto implica no NÃO ajuste do preço.

a condição de parada do loop é até que todos os produtos tenham seus preços ajustados.
Para mim, isto irá causar um loop infinito no código.

1 resposta

Olá, Marcelo!

Entendo a sua preocupação com a possibilidade de um loop infinito. Vamos analisar a situação: a alternativa correta sugere implementar um loop que percorra a lista de produtos, ajustando os preços conforme as regras estabelecidas.

A chave para evitar um loop infinito é garantir que, a cada iteração, o preço de um produto seja ajustado para que ele não precise ser ajustado novamente em uma próxima iteração. No seu caso, a lógica é a seguinte:

  1. Se o preço do produto já for maior ou igual a R$ 10.000,00, ele é mantido nesse valor e não precisa de mais ajustes.
  2. Se o preço for menor que R$ 10.000,00, ele é aumentado em 5%. Caso esse aumento faça o preço ultrapassar R$ 10.000,00, ele é ajustado para exatamente R$ 10.000,00.

Com essa lógica, cada produto será ajustado apenas uma vez. Assim, o loop não se tornará infinito porque, em cada iteração, o número de produtos que ainda precisam de ajuste diminui até que todos os preços estejam ajustados conforme as regras.

Por exemplo, suponha que temos um produto com preço de R$ 9.500,00. Ele será aumentado em 5%, resultando em R$ 9.975,00. Como não ultrapassou R$ 10.000,00, o preço final será R$ 9.975,00. Em outra situação, se o preço inicial fosse R$ 9.800,00, o aumento de 5% resultaria em R$ 10.290,00, mas o ajuste final o fixaria em R$ 10.000,00.

Espero ter ajudado. Caso tenha alguma dúvida, conte com nosso apoio!

Abraços e bons estudos!

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