• Python

2022.1 Prova 2 - Questão 2: ContábilLife#

Uma empresa de contabilidade chamada ContábilLife possui muitos clientes que trabalham no ramo de vendas de alimentos.

Diariamente a empresa recebe relatórios de seus clientes e a partir desses relatórios eles precisam emitir notas fiscais. Além disso, a contabilidade também gera alguns relatórios com dados consolidados.

Abaixo temos um exemplo de relatório de vendas de um de seus clientes, a Gourmet Pastéis:

vendas = {
    '01/02/2022': {
        'maquininha1': {
            'debito' : {
                'visa': 50,
                'mastercard':100,
                'maestro':200,
                'hipercard':230.10
            },
            'credito': {
                'visa': 50,
                'mastercard':100,
                'elo': 150,
                'american express': 10
            },
            'refeicao':{
              'ticket' : 50.55,
              'alelo' : 21.10
            }
        },
        'maquininha2': {
            'debito' : {
                'visa': 28.18,
                'mastercard':470.13,
                'hipercard':55.20
            },
            'credito': {
                'visa': 354,
                'mastercard':100.59,
                'elo': 903,
                'american express': 836.78
            },
            'refeicao':{
              'ticket' : 44.60,
            }
        },
        'maquininha3': {
            'debito' : {
                'visa': 170.30,
                'mastercard':907.10,
                'hipercard':492.10
            },
            'credito': {
                'visa': 500.53,
                'mastercard':929.10,
                'elo': 941.15,
                'american express': 202.29
            }
        },
    },
    '20/04/2022': {
        'maquininha1': {
            'debito' : {
                'visa': 50,
                'mastercard':100,
                'maestro':200,
                'hipercard':230.10
            },
            'credito': {
                'visa': 740,
                'mastercard':100,
                'elo': 515.50,
                'american express': 196.10
            },
            'refeicao':{
              'ticket' : 692.02,
              'alelo' : 402.10
            }
        },
    },
}

Este relatório de vendas possui informações de vendas diárias.

Se olharmos com mais cuidado, podemos perceber que esse dicionário possui chaves representando datas e outros dicionários como valor.

vendas = {
    '01/02/2022': {
        'maquininha1': {...},
        'maquininha2': {...},
}
Um estabelecimento pode possuir várias máquinas de cartão, pois cada uma pode atender diferentes bandeiras e oferecer taxas vantajosas.

Em seguida, podemos olhar para os dicionários de cada máquina de cartão (maquininha1, maquininha2, ...) e notar que os itens desse dicionário é composto por chaves representando o método de pagamento e os valores sendo representados por outros dicionários.

'maquininha1': {
    'debito' :  {...},
    'credito':  {...},
    'refeicao': {...},
}

E por fim, para cada método de pagamento (débito, crédito e refeição) os dicionários possuem chaves sendo bandeiras de cartão e o valor sendo o valor total de vendas.

{
    'visa': 50,
    'mastercard':100,
    'elo': 150,
    'american express': 10
}

Para este exercício vamos processar algumas informações de dicionários parecidos com os apresentados aqui.

Importante

Faça o download do exercício pelo link no final desta página!

Nível BÁSICO

Acesse o link abaixo para implementar os itens do nível BÁSICO.

Utilize o botão "Resolver exercício" no final desta página para abrir o código e os testes no VS Code.

Nível Básico

Nível PROFICIENTE

Acesse o link abaixo para implementar os itens do nível PROFICIENTE

Nível Proficiente

Nível AVANÇADO

Acesse o link abaixo para implementar os itens do nível AVANÇADO

Nível Avançado