Pular para o conteúdo
Bruno Dórea
Todos os posts

5 mins de leitura


Valor Acumulado de Vendas Mensais

Modelagem e Visualização de Dados com Python - 2/2


Suzano - Análise de Dados com Power BI
Suzano - Análise de Dados com Power BI

Descrição

Neste desafio, você irá acumular os valores de venda ao longo dos meses, somando cada valor ao total anterior. Esse cálculo é essencial em relatórios de vendas, pois permite visualizar a tendência de crescimento ao longo do tempo. Imagine que você trabalha em uma equipe de vendas e precisa apresentar um relatório mensal; o total acumulado mostra não apenas quanto foi vendido em cada mês, mas também o desempenho geral da equipe.

Em um ambiente DAX (Data Analysis Expressions), utilizado em ferramentas como Power BI e Excel, funções como CALCULATE e FILTER são aplicadas para calcular o total acumulado de vendas. Ao simular esse cálculo em Python, você entenderá como essas operações são realizadas em uma plataforma de análise de dados.

Entrada

A entrada consiste em:

  1. Um número inteiro n (1 ≤ n ≤ 12), representando a quantidade de meses.
  2. Em seguida, serão fornecidos n pares de entradas, onde cada par consiste em:
  • Um string representando o nome do mês (por exemplo, "Janeiro", "Fevereiro", etc.).
  • Um número decimal representando o valor total de vendas desse mês (por exemplo, 5000.0).

Saída

A saída deve ser uma lista de strings, onde cada string corresponde a um mês e seu respectivo total acumulado de vendas.

Exemplos

A tabela abaixo apresenta exemplos com alguns dados de entrada e suas respectivas saídas esperadas. Certifique-se de testar seu programa com esses exemplos e com outros casos possíveis.

EntradaSaída
3Janeiro: 5000.0
JaneiroFevereiro: 16000.0
5000Março: 34000.0
Fevereiro
11000
Março
18000
EntradaSaída
3Abril: 1500.0
AbrilMaio: 4000.0
1500Junho: 7500.0
Maio
2500
Junho
3500
EntradaSaída
3Julho: 1000.0
JulhoAgosto: 4000.0
1000Setembro: 4500.0
Agosto
3000
Setembro
500

Resolução

def valor_acumulado_vendas(vendas_mensais):
    acumulado = 0
    vendas_acumuladas = []
    
    for venda in vendas_mensais:
        acumulado += venda["valor_venda"]
        vendas_acumuladas.append(f"{venda['mes']}: {acumulado:.1f}")
    
    return vendas_acumuladas
    
 
vendas_mensais = []
n = int(input())
 
for i in range(n):
    mes = input()
    valor_venda = float(input())
    vendas_mensais.append({"mes": mes, "valor_venda": valor_venda})
 
resultado = valor_acumulado_vendas(vendas_mensais)
for linha in resultado:
    print(linha)

Para encontrar outras soluções, verifique aqui.

Caso encontre algum erro ou tenha sugestões, clique aqui e abra uma issue no Github.