Faça um programa, utilizando a função abaixo, para processar os 20 postos de combustível de uma franquia. Para cada posto, o programa deverá ler o código do posto e o valor total arrecadado com as vendas de todos os combustíveis. Ao final, o programa deverá exibir o maior valor total arrecadado com as vendas de todos os combustíveis por um posto e o valor geral total arrecadado pelos 20 postos de combustível. Considere que não ocorrerá empate. Faça uma função para processar os 20 postos de combustível. A função irá ler os dados de cada posto, calcular e exibir o maior valor total arrecadado com as vendas de todos os combustíveis por um posto e calcular e retornar o valor geral total arrecadado pelos 20 postos de combustível.

Passo 1

Beleza, vamos resumir o que a questão tá pedindo e entender o que vamos precisar para resolver. A gente precisa criar um programa que processe os dados de 20 postos de combustível de uma franquia. Para cada posto, o programa vai ler o código do posto e o valor total arrecadado com as vendas de todos os combustíveis. No final, o programa deve mostrar qual foi o maior valor arrecadado por um único posto e também o valor total arrecadado por todos os 20 postos juntos.
Matéria envolvida: Programação básica, uso de loops (como o for), estruturas condicionais (if), e funções para organizar o código.
O que vamos precisar:
  • Uma função para processar os dados dos 20 postos.
  • Variáveis para armazenar o maior valor arrecadado e o total geral.
  • Loop para iterar sobre os 20 postos.
  • Entrada de dados para ler o código e o valor de cada posto.
  • Condição para atualizar o maior valor arrecadado quando necessário.

Passo 2

Primeiro, vamos pensar na estrutura geral da nossa função. Vamos chamar ela de processarPostos. Essa função vai lidar com os 20 postos, então vamos usar um loop que se repete 20 vezes.
def processarPostos():
    # Código vai aqui

Passo 3

Dentro da função, precisamos de duas variáveis principais:
  • maiorValor: para guardar o maior valor arrecadado. Inicialmente, vamos definir como 0.
  • totalGeral: para somar todos os valores arrecadados pelos 20 postos. Também começa em 0.
def processarPostos():
    maiorValor = 0
    totalGeral = 0

Passo 4

Agora, vamos criar um loop que repete 20 vezes, uma para cada posto. Em cada iteração, vamos:
  1. Ler o código do posto.
  2. Ler o valor arrecadado nesse posto.
  3. Atualizar maiorValor se o valor atual for maior que o que já tínhamos.
  4. Somar o valor ao totalGeral.
def processarPostos():
    maiorValor = 0
    totalGeral = 0
    for i in range(20):
        codigo = input("Digite o código do posto: ")
        valor = float(input("Digite o valor total arrecadado: "))
        if valor > maiorValor:
            maiorValor = valor
        totalGeral += valor

Passo 5

Depois que o loop terminar, ou seja, depois de processar os 20 postos, precisamos exibir o maior valor arrecadado e o total geral. Podemos usar a função print para isso.
def processarPostos():
    maiorValor = 0
    totalGeral = 0
    for i in range(20):
        codigo = input("Digite o código do posto: ")
        valor = float(input("Digite o valor total arrecadado: "))
        if valor > maiorValor:
            maiorValor = valor
        totalGeral += valor
    print(f"O maior valor arrecadado foi: R$ {maiorValor:.2f}")
    print(f"O valor geral arrecadado pelos 20 postos foi: R$ {totalGeral:.2f}")
    return totalGeral
Explicação das partes importantes:
  • for i in range(20): cria um loop que se repete 20 vezes.
  • input(): função para receber dados do usuário.
  • float(): converte a entrada para um número decimal, já que estamos trabalhando com valores monetários.
  • if valor > maiorValor: verifica se o valor atual é maior que o maior valor que já registramos.
  • print(f"..."): formata a saída para mostrar os resultados com duas casas decimais.
  • return totalGeral: a função retorna o total geral arrecadado.

Resposta

A função completa para processar os 20 postos de combustível fica assim:
def processarPostos():
    maiorValor = 0
    totalGeral = 0
    for i in range(20):
        codigo = input("Digite o código do posto: ")
        valor = float(input("Digite o valor total arrecadado: "))
        if valor > maiorValor:
            maiorValor = valor
        totalGeral += valor
    print(f"O maior valor arrecadado foi: R$ {maiorValor:.2f}")
    print(f"O valor geral arrecadado pelos 20 postos foi: R$ {totalGeral:.2f}")
    return totalGeral
Esse programa vai ler os dados de cada um dos 20 postos, identificar qual teve a maior arrecadação e calcular o total geral arrecadado por todos os postos juntos.

Exercícios relacionados