Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Calculando o Total de Vendas e da Pontuação do AFA

Nesta atividade, estou aprendendo a trabalhar com múltiplos valores informados em uma única entrada, utilizando as funções split(), map() e sum(). O objetivo é compreender como receber vários dados simultaneamente, convertê-los para números e consolidá-los em um único resultado.

Solução da atividade da Alura

valores = input("Digite os valores das vendas: ").split()

total = sum(map(float, valores))

print(f"O total de vendas foi: {total}")

Nesta atividade, foram utilizados três conceitos importantes:

  • split() → separa os valores digitados pelo usuário;
  • map() → converte os valores para números;
  • sum() → soma todos os valores.

Exemplo:

Entrada:

100 250 300

Após o split():

["100", "250", "300"]

Após o map(float):

[100.0, 250.0, 300.0]

Após o sum():

650.0

Resultado:

O total de vendas foi: 650

Aplicação na Plataforma AFA

Na Plataforma AFA, a mesma lógica pode ser utilizada para consolidar automaticamente os registros realizados pelos professores ao longo do trimestre.

Contudo, existe uma regra de negócio fundamental:

Todo estudante inicia o trimestre com nota AFA igual a 8,0.

Os registros realizados pelos professores representam evidências positivas e negativas que alteram essa nota inicial.

Exemplo:

Registros:
+1,0
+0,5
+0,3
-0,2
-0,5
+1,0

O sistema deve:

  1. Receber os registros;
  2. Converter os valores para números;
  3. Somar os registros;
  4. Adicionar o resultado à nota inicial 8,0;
  5. Respeitar o limite máximo da nota.

Implementação em Python

def calcular_nota_afa(registros):
    nota_inicial = 8.0

    pontuacao = sum(map(float, registros))

    nota_afa = nota_inicial + pontuacao

    nota_afa = min(nota_afa, 10.0)

    return nota_afa


registros = ["1.0", "0.5", "0.3", "-0.2", "-0.5", "1.0"]

nota_final = calcular_nota_afa(registros)

print(f"Nota AFA: {nota_final}")

Exemplo de cálculo

Nota inicial = 8,0

Registros:
+1,0
+0,5
+0,3
-0,2
-0,5
+1,0

Soma dos registros:

1,0 + 0,5 + 0,3 - 0,2 - 0,5 + 1,0 = 2,1

Nota calculada:

8,0 + 2,1 = 10,1

Aplicação da regra institucional:

Nota máxima permitida = 10,0

Resultado:

Nota AFA = 10,0

Aprendizagem incorporada ao projeto

Durante esta atividade, foi incorporado um novo conceito ao desenvolvimento da Plataforma AFA:

Coletar dados
↓
Converter dados
↓
Consolidar informações
↓
Aplicar regras de negócio
↓
Gerar indicadores

Nesse contexto, não basta apenas somar valores. O sistema precisa respeitar as regras pedagógicas definidas pela instituição.

O que realmente aprendi?

O exercício parece ensinar apenas a somar valores de vendas.

Mas o conceito transferível é muito mais amplo:

Receber vários dados
↓
Converter os dados
↓
Consolidar informações
↓
Aplicar regras institucionais
↓
Gerar resultados confiáveis

Na atividade da Alura:

Valores de vendas
↓
Conversão para números
↓
Soma das vendas
↓
Total vendido

Na Plataforma AFA:

Registros dos professores
↓
Conversão para números
↓
Soma das evidências
↓
Aplicação da nota-base 8,0
↓
Validação dos limites institucionais
↓
Geração da Nota AFA

Percebi que o principal aprendizado desta atividade foi compreender que sistemas educacionais não apenas realizam cálculos, mas transformam dados em indicadores respeitando regras pedagógicas previamente definidas. No contexto da Plataforma AFA, essa lógica será fundamental para garantir que os resultados reflitam corretamente os critérios institucionais de acompanhamento da aprendizagem.

1 resposta

Oi, Patricia. Tudo bem com você?

Fiquei muito contente em ver sua resolução para o exercício focado em calcular o total de vendas, além da excelente expansão que você criou para o contexto da Plataforma AFA. A lógica que desenvolveu aplicando as funções input, split, map e sum demonstra como esses métodos matemáticos e de manipulação de strings conseguem resolver problemas diversos em projetos reais. Seu código principal executa perfeitamente a proposta da atividade e a lógica de negócio complementar para a pontuação institucional está impecável ao utilizar a função min para limitar a nota final.

Como uma dica adicional para o desenvolvimento contínuo do seu projeto, caso os registros venham futuramente com valores vazios ou caracteres indesejados devido à digitação manual, o uso de estruturas de tratamento de exceções ou validações prévias pode blindar ainda mais o comportamento da aplicação.

Considerando essa transposição de conceitos que você realizou de maneira tão detalhada, como você planeja estruturar o recebimento desses registros no sistema para garantir que os dados cheguem limpos antes da conversão?

Parabéns pelo excelente compartilhamento e dedicação nos estudos, o fórum continua sempre à sua disposição.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!