Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Projeto] Desafio: conversor de moedas

Uma forma mais prática e organizada de criar um conversor de moedas em plataformas de turismo é separar o sistema em partes menores, cada uma responsável por uma tarefa específica. Em vez de concentrar tudo em um único bloco de código, a modularização ajuda a deixar o programa mais fácil de entender, corrigir e atualizar no futuro.

Nesse modelo, a principal parte do sistema é a função de conversão. Ela funciona como um pequeno mecanismo responsável apenas pelo cálculo da moeda. O sistema recebe o valor em Reais e a cotação da moeda estrangeira, realiza a divisão e devolve o resultado convertido. Dessa forma, a lógica fica centralizada em um único ponto, evitando repetição de código e reduzindo erros.

A fórmula usada é simples:

A imagem apresenta um fundo cinza escuro com uma fórmula matemática centralizada, escrita em texto branco com uma fonte serifada: Valor em Moeda Estrangeira é igual ao Montante em Reais dividido pela Cotação Atual.
O funcionamento do sistema também se torna mais fácil de acompanhar. Primeiro, o usuário informa o valor que deseja converter e a cotação atual da moeda. Depois, esses dados são enviados para a função responsável pelo cálculo. Por fim, o resultado aparece na tela de forma clara e rápida para quem está utilizando a plataforma.

Além de deixar o desenvolvimento mais organizado, essa estrutura traz vantagens importantes para a manutenção do sistema. Caso exista algum erro no cálculo, o ajuste pode ser feito diretamente na função principal sem alterar o restante do programa. Outro ponto positivo é a reutilização: a mesma lógica pode ser usada em diferentes partes do aplicativo, como consultas de preços, reservas ou pagamentos.

Essa organização também facilita futuras expansões. Se a plataforma precisar trabalhar com Euro, Peso ou qualquer outra moeda, basta adicionar novas cotações, sem a necessidade de reconstruir toda a estrutura do sistema. Isso torna o código mais limpo, mais intuitivo e muito mais simples para outros desenvolvedores entenderem e continuarem o projeto.

3 respostas
solução!

Olá, Estudante! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou a modularização para organizar o sistema de conversão, utilizou muito bem a função principal de cálculo para centralizar a lógica e ainda compreendeu a importância da reutilização do código para facilitar expansões futuras.

Uma sugestão para o futuro seria implementar validações de entrada, como impedir que o usuário insira valores negativos ou cotação igual a zero, garantindo maior robustez ao programa.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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

Olá, Estudante. Como vai?

Parabéns por mais uma excelente contribuição! Você descreveu com muita propriedade o conceito de modularização, que é um dos pilares do pensamento computacional e do desenvolvimento de softwares profissionais. Dividir um sistema em partes menores não apenas organiza o código, mas cria uma estrutura sustentável e escalável.

Gostaria de destacar pontos fundamentais na sua proposta:

  • Responsabilidade Única: Ao criar uma função específica para o cálculo, você garante que ela faça apenas uma tarefa e a faça bem. Isso facilita imensamente o isolamento de erros, pois se o cálculo falhar, você já sabe exatamente em qual "módulo" procurar o problema.
  • Reutilização de Lógica: Como você mencionou, essa mesma função pode atender a reservas, pagamentos ou simples consultas. Na programação, seguimos o princípio DRY (Don't Repeat Yourself — Não se repita), e sua lógica de centralizar o cálculo evita que você precise escrever a fórmula matemática em vários lugares do aplicativo.
  • Abstração Matemática: A fórmula apresentada na imagem é a base perfeita para o algoritmo:

Valor em Moeda Estrangeira = Montante em Reais / Cotação Atual

No código, essa expressão se torna o "coração" da sua função de conversão.

Para complementar seu raciocínio, veja como esse fluxo de informação que você descreveu — entrada de dados, envio para a função e retorno do resultado — ficaria estruturado em um pequeno exemplo de lógica:

  1. Entrada: Sistema solicita montanteReais e cotacaoDolar.
  2. Processamento (A Função): O sistema chama converter(montanteReais, cotacaoDolar).
  3. Saída: A função devolve o valor calculado para ser exibido na tela.

Essa mentalidade de separar a interface (o que o usuário vê) da lógica (o cálculo matemático) é o que permite que plataformas de turismo cresçam e suportem dezenas de moedas diferentes sem se tornarem confusas.

Espero que possa ter lhe ajudado!

Obrigado pelo retorno, Daniel e Evandro, com certeza ficara mais completo com as dicas que deram.