Olá boa noite!
Segue meu fluxograma.
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!
Olá boa noite!
Segue meu fluxograma.
Olá, Vinicius. Como vai?
Parabéns pela resolução da atividade! É muito bom ver você materializando a lógica de programação através de uma ferramenta visual tão poderosa. O seu fluxograma de calculadora ficou limpo, organizado e perfeitamente legível.
Você utilizou muito bem o padrão de formas geométricas que rege as boas práticas de modelagem de algoritmos:
Inicio e Fim).Insira um número, Escolha um operador, Mostra o resultado).Realiza o cálculo).O fluxo linear que você desenhou faz todo o sentido técnico e descreve exatamente como uma calculadora básica opera sequencialmente na memória.
Para enriquecer ainda mais a sua bagagem sobre algoritmos e te preparar para os próximos passos no curso de JavaScript, quero compartilhar um detalhe sutil sobre como os programadores lidam com tomadas de decisão dentro de um fluxograma:
O seu fluxograma atual assume um caminho linear e perfeito (o algoritmo executa uma linha após a outra). Porém, se pararmos para pensar na caixinha Realiza o cálculo, o computador não faz um cálculo genérico; ele precisa olhar para o operador escolhido e decidir qual conta fazer.
Na engenharia de software, para representar que o código vai tomar caminhos diferentes baseados em uma condição (os famosos blocos if / else do JavaScript), nós utilizamos a figura geométrica do Losango (Decisão).
Se você quisesse expandir o seu fluxograma para detalhar o processamento interno, a etapa após o segundo número ficaria parecida com isto:
[ Escolha um operador ]
|
v
/-------------------\
< O operador é '+'? >
\-------------------/
/ \
(Sim)/ \(Não)
v v
[ Somar números ] < O operador é '-'? >
|
...
Adicionar essa camada de caminhos alternativos ajuda o desenvolvedor a enxergar todas as ramificações do sistema antes mesmo de começar a digitar as funções no editor de código.
Você mandou super bem no design e na estruturação do algoritmo. Continue com esse capricho e foco no Pensamento Computacional, pois ele é a base de ouro para criar códigos de alta performance em JavaScript!
Espero que possa ter lhe ajudado!