Chegou a hora de juntar as peças do quebra-cabeça! Neste primeiro projeto real, vamos unir Entradas (leia), Variáveis numéricas e Estruturas de Decisão Múltiplas (Escolha Caso) para criar uma máquina de cálculo útil no dia a dia.
Exemplo de codigoVisuAlg
algoritmo "CalculadoraV1"
var
op: inteiro
n1, n2, res: real
inicio
escreval("=== CALCULADORA SIMPLES ===")
escreval("[1] Soma | [2] Subtração | [3] Multiplicação | [4] Divisão")
leia(op)
escreva("Digite o primeiro valor: ")
leia(n1)
escreva("Digite o segundo valor: ")
leia(n2)
escolha op
caso 1
res <- n1 + n2
escreval("Resultado: ", res)
caso 2
res <- n1 - n2
escreval("Resultado: ", res)
caso 3
res <- n1 * n2
escreval("Resultado: ", res)
caso 4
se (n2 = 0) entao
escreval("ERRO: Divisão por zero não é permitida")
senao
res <- n1 / n2
escreval("Resultado: ", res)
fimse
outrocaso
escreval("ERRO: Operador inválido")
fimescolha
fimalgoritmoA calculadora V1 desliga logo após a primeira conta. Na Versão 2 abaixo, inserimos um gigantesco laço de Repetição envolvendo tudo e englobamos o LimpaTela. Assim, temos um programa contínuo estilo software de comércio.
Exemplo de codigoVisuAlg
algoritmo "CalculadoraInfinita"
var
op: inteiro
n1, n2, res: real
inicio
op <- -1
enquanto op <> 0 faca
limpatela
escreval("=== CALCULADORA INFINITA ===")
escreval("[1] Somar | [2] Diminuir | [0] FECHAR PROGRAMA")
escreva("Escolha uma opção: ")
leia(op)
se op = 0 entao
// encerra o laço
senao
se (op = 1) ou (op = 2) entao
escreva("Primeiro valor: ")
leia(n1)
escreva("Segundo valor: ")
leia(n2)
se op = 1 entao
res <- n1 + n2
senao
res <- n1 - n2
fimse
escreval("Resultado: ", res)
senao
escreval("Opção inválida! Use 1, 2 ou 0.")
fimse
escreval("Aperte Enter para continuar...")
pausa
fimse
fimenquanto
escreval("Sistema Finalizado. Adeus!")
fimalgoritmoDesafio: Incremente a CalculadoraV2 adicionando blindagem (SE divisao, verifique se N2 é 0 antes de realizar o cálculo, pois divisão por zero quebra o programa!).