1
I’m trying to add a "Back" from one menu to the other, first tried using the do
only in the 2nd. menu to return to the first, but it only closes.
Follow the whole code:
namespace ConsoleApp10
{
class Program
{
static void Main(string[] args)
{
int menu;
Console.WriteLine("1 - Conversões");
Console.WriteLine("2 - Medias");
Console.WriteLine("0 - Sair");
Console.WriteLine("Escolha o que deseja fazer: ");
while (!(int.TryParse(Console.ReadLine(), out menu)))
{
Console.Write("Opção não numerica, digite novamente: ");
}
switch (menu)
{
case 2: media(); break;
case 1: conversoes(); break;
case 0: Console.WriteLine("Finalizando..."); break;
default: Console.WriteLine("Nós não temos esta opção, escolhe novamente:"); break;
}
Console.ReadKey();
}
static void media()
{
Console.Clear();
int menu1;
do // O PROBLEMA ESTÁ AQUI
{
Console.WriteLine("1 - Média Aritmetica");
Console.WriteLine("2 - Média Ponderada");
Console.WriteLine("3 - Voltar");
Console.WriteLine("Escolha o que deseja fazer: ");
menu1 = int.Parse (Console.ReadLine());
switch (menu1)
{
case 1: mediaari(); break;
case 2: mediapon(); break;
case 3: break;
default: Console.WriteLine("Nós não temos esta opção, escolhe novamente:"); break;
}
}
while (false);
}
static void mediaari()
{
Console.Clear();
int n1, n2, n3, n4;
int soma, div;
Console.WriteLine("Digite a nota 1: ");
n1 = int.Parse(Console.ReadLine());
Console.WriteLine("Digite a nota 2: ");
n2 = int.Parse(Console.ReadLine());
Console.WriteLine("Digite a nota 3: ");
n3 = int.Parse(Console.ReadLine());
Console.WriteLine("Digite a nota 4: ");
n4 = int.Parse(Console.ReadLine());
soma = n1 + n2 + n3 + n4;
div = soma / 4;
Console.WriteLine("A média é: " + div);
Console.ReadKey();
}
static void mediapon()
{
Console.Clear();
int n1, n2, n3;
int p1, p2, p3;
int soma;
Console.WriteLine("Digite a nota 1: ");
n1 = int.Parse(Console.ReadLine());
Console.WriteLine("Digite o peso 1: ");
p1 = int.Parse(Console.ReadLine());
Console.WriteLine("Digite a nota 2: ");
n2 = int.Parse(Console.ReadLine());
Console.WriteLine("Digite o peso 2: ");
p2 = int.Parse(Console.ReadLine());
Console.WriteLine("Digite a nota 3: ");
n3 = int.Parse(Console.ReadLine());
Console.WriteLine("Digite o peso 3: ");
p3 = int.Parse(Console.ReadLine());
soma = (n1 * p1 + n2 * p2) / (p1 + p2);
Console.WriteLine("A média é: " + soma);
}
static void conversoes()
{
Console.Clear();
int menu2;
Console.WriteLine("1 - Temperatua");
Console.WriteLine("2 - Moeda");
Console.WriteLine("3 - Voltar");
Console.WriteLine("Escolha o que deseja fazer: ");
while (!(int.TryParse(Console.ReadLine(), out menu2)))
{
Console.Write("Opção não numerica, digite novamente: ");
}
switch (menu2)
{
case 1: temp(); break;
case 2:; break;
case 0: Console.WriteLine("Finalizando..."); break;
default: Console.WriteLine("Nós não temos esta opção, escolhe novamente:"); break;
}
}
static void temp()
{
Console.Clear();
int menu2;
Console.WriteLine("1 - °F -> °C");
Console.WriteLine("2 - °C -> °F");
Console.WriteLine("3 - Voltar");
Console.WriteLine("Escolha o que deseja fazer: ");
while (!(int.TryParse(Console.ReadLine(), out menu2)))
{
Console.Write("Opção não numerica, digite novamente: ");
}
switch (menu2)
{
case 1: fc(); break;
case 2:; break;
case 0: Console.WriteLine("Finalizando..."); break;
default:
Console.WriteLine("Nós não temos esta opção, escolhe novamente:"); break;
}
}
static void fc()
{
Console.Clear();
int f, c;
Console.WriteLine("Digite o valor em °F: ");
f = int.Parse(Console.ReadLine());
c = (f - 32) * 5 / 9;
Console.WriteLine("A conversão é igual a: " + c);
}
}
}
Did the answer solve your question? Do you think you can accept it? See [tour] if you don’t know how you do it. This would help a lot to indicate that the solution was useful to you. You can also vote on any question or answer you find useful on the entire site
– Maniero