Página inicial
/
Tecnologia
/
Its Almost the Summer Sales! You Work for a Shop That Wishes to Give a Discount of (discounts) to the Most Expensive Item Purchased by

Question

Its almost the Summer Sales! You work for a shop that wishes to give a discount of (discounts) to the most expensive item purchased by a given customer during the sales period. Only one product can benefit from the discount. You are tasked by the shop owner to implement the function calculateTotalPrice(Sprices , discount)]which takes the list of prices of the products purchased by a customer and the percentage Sdiscount/as parameters and returns the total purchase price as an integer (rounded down if the total is a float number). Constraints: 0leqslant discountleqslant 100 0lt price of a product lt 100000 0lt numberofproductslt 100

Solution

Verificación de expertos
4.5 (215 Votos)
Olinda Mestre · Tutor por 5 anos

Resposta

Para implementar a função `calculateTotalPrice(Sprices, Sdiscount)` em Python, podemos seguir os seguintes passos:1. Verificar se o valor de `Sdiscount` está dentro do intervalo válido (0 a 100).2. Encontrar o preço mais alto na lista `Sprices`.3. Calcular o desconto a ser aplicado no preço mais alto.4. Calcular o total de compra após aplicar o desconto.5. Retornar o total de compra como um inteiro (arredondando para baixo se for um número de ponto flutuante).Aqui está o código Python que implementa essa lógica:```pythondef calculateTotalPrice(Sprices, Sdiscount): if not 0 <= Sdiscount <= 100: raise ValueError("O desconto deve estar entre 0 e 100.") # Encontrar o preço mais alto max_price = max(Sprices) # Calcular o desconto discount_amount = max_price * (Sdiscount / 100) # Calcular o total de compra após o desconto total_price = max_price - discount_amount # Arredondar para baixo total_price = int(total_price) return total_price```### Explicação:1. **Verificação do Desconto**: Verificamos se `Sdiscount` está dentro do intervalo válido (0 a 100). Se não estiver, lançamos uma exceção `ValueError`.2. **Encontrar o Preço Mais Alto**: Usamos a função `max()` para encontrar o preço mais alto na lista `Sprices`.3. **Calcular o Desconto**: Multiplicamos o preço mais alto pelo desconto em porcentagem (dividimos por 100).4. **Calcular o Total de Compra**: Subtraímos o valor do desconto do preço mais alto.5. **Arredondar para Baixo**: Convertemos o total de compra para um inteiro arredondando para baixo.Se precisar de mais alguma coisa, estou à disposição!