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:
Opções do MENU DO PROGRAMA:
1 - De Fahrenheit para Celsius
2 - De Celsius para Fahrenheit
0- Sair
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
). 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
ecelsius
, 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
Dentro desse laço, exibimos o menu e lemos .
Dentro desse laço, exibimos o menu e lemos
Passo 4
Para tratar cada escolha usamos a estrutura condicional
ESCOLHA
:- Caso
: lê fahrenheit
, calculae exibe o resultado. - Caso
: lê celsius
, calculae exibe o resultado. - Caso
: 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)
var
opcao: inteiro
fahrenheit, celsius: real
inicio
repita
escreva("\nMENU DO PROGRAMA\n")
escreva("
escreva("
escreva("
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
fimalgoritmo