Usando o VisuAlg, elabore em Portugol um algoritmo para realizar a conversão entre as temperaturas Celsius e Fahrenheit. Disponibilize um menu de opções usando a estrutura condicional ESCOLHA e execute a opção escolhida durante a execução, exibindo novamente o menu de opções, até que a opção escolhida seja a de SAIR. Devese exibir uma mensagem de alerta em caso de opção inválida.
Observação: fórmulas de conversão de temperatura:
^circ C=( ^circ F-32) / 1,8 ^circ F= ^circ C times 1,8+32
Opções do MENU DO PROGRAMA:
1 - De Fahrenheit para Celsius
2 - De Celsius para Fahrenheit
0- Sair

Passo 1

O enunciado pede um algoritmo em Portugol (VisuAlg) que exiba um menu com três opções: converter de Fahrenheit para Celsius, converter de Celsius para Fahrenheit ou sair. O menu deve repetir até o usuário escolher sair (opção 0). Se o usuário digitar uma opção inválida, deve aparecer uma mensagem de alerta.

Passo 2

Precisamos de três variáveis:
  • Uma variável inteira opcao para armazenar a escolha do usuário.
  • Duas variáveis reais, fahrenheit e celsius, para armazenar as temperaturas e calcular a conversão.

Passo 3

Para repetir o menu até o usuário escolher sair, vamos usar a estrutura de repetição
repita ldots ate opcao = 0
Dentro desse laço, exibimos o menu e lemos opcao.

Passo 4

Para tratar cada escolha usamos a estrutura condicional ESCOLHA:
  • Caso 1: lê fahrenheit, calcula celsius = fahrenheit - 321,8e exibe o resultado.
  • Caso 2: lê celsius, calcula fahrenheit = celsius times 1,8 + 32e exibe o resultado.
  • Caso 0: exibe mensagem de encerramento.
  • Caso contrário: exibe “Opção inválida!”.

Resposta

algoritmo “ConversaoTemperatura”
var
opcao: inteiro
fahrenheit, celsius: real
inicio
repita
escreva("\nMENU DO PROGRAMA\n")
escreva(" - De Fahrenheit para Celsius\n")
escreva(" - De Celsius para Fahrenheit\n")
escreva(" - Sair\n")
escreva("Escolha uma op\c{c}~ao: ")
leia(opcao)
  escolha opcao  
     caso \(1\):  
        escreva("Informe a temperatura em Fahrenheit: ")  
        leia(fahrenheit)  
        celsius \leftarrow \frac{(fahrenheit - 32)}{1.8}  
        escreva("Equivalente em Celsius: ", celsius:\(4\):\(2\), "\n")  

     caso \(2\):  
        escreva("Informe a temperatura em Celsius: ")  
        leia(celsius)  
        fahrenheit \leftarrow celsius \cdot (1.8) + 32  
        escreva("Equivalente em Fahrenheit: ", fahrenheit:\(4\):\(2\), "\n")  

     caso \(0\):  
        escreva("Encerrando o programa...\n")  

     caso contr\'ario:  
        escreva("Op\c{c}\~ao inv\'alida! Tente novamente.\n")  
  fimescolha  
ate opcao = 0
fimalgoritmo

Exercícios relacionados