Defina uma função chamada menu que exiba o menu de opções a seguir na tela, pedindo para o usuário digitar a opção desejada e retornar o valor digitado pelo usuário. Implemente na função principal o código necessário para realizar as opções exibidas no menu. Observação: não use estruturas de repetição!
Menu de opções:
1 – Calcular o seno de um ângulo
2 – Calcular o cosseno de um ângulo
3 – Calcular a potência de um número por outro
4 – Calcular a raiz quadrada de um número
Eu fiz o seguinte programa mas quando vou compilar ele eu digito a opção que quero e o valor, aperto enter e ele mostra o menu de novo, aí só da segunda vez que digito opção e valor que ele me retorna o resultado. Por quê tá acontecendo isso?
#include <iostream>
#include <cstdlib>
#include <cmath>
#include <locale.h>
using namespace std;
int menu();
int main()
{
setlocale(LC_ALL, "Portuguese");
int a, b, resultado;
menu();
resultado = menu();
cout << "O resultado é: " << resultado;
system("pause > 0");
return 0;
}
int menu()
{
setlocale(LC_ALL, "Portuguese");
int opcao, res, a, b;
cout << "Menu de opções: "
<< "\n\n1 - Calcular o seno de um ângulo."
<< "\n2 - Calcular o cosseno de um ângulo."
<< "\n3 - Calcular a potência de um número poro utro."
<< "\n4 - Calcular a raíz quadrada de um número.";
cout << "\n\nDigite a opção desejada e o valor a ser calculado: ";
cin >> opcao >> a;
if (opcao==1)
res = sin(a);
else if (opcao==2)
res = cos(a);
else if (opcao==3)
{
cout << "Digite o expoente: ";
cin >> b;
res = pow(a, b);
}
else if (opcao==4)
res = sqrt(a);
return res;
}