Como criar um Switch Case dentro de outro Switch case C Sharp
10/02/2017
0
Pessoal,
Estou tentando criar um menu e dentro dele terá algumas opções, sendo que a última sempre deve ser voltar ao menu principal até que aperte o número 4 para sair...
Consegui fazer ele mostrar o primeiro sub-menu, porem a primeira opção dele (incluir aluno) fica em looping
O segundo menu e o terceiro não estão entrando também.
Alguém poderia me ajudar?
Obrigado!!
using AulaOrientaçãoObjetos.Modelo;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AulaOrientaçãoObjetos
{
public class Program
{
static void Main(string[] args)
{
Pessoa pessoa = new Pessoa();
List<Pessoa> pessoas = new List<Pessoa>();
bool FimExecucaoMenu = true;
do
{
Console.Clear();
Console.WriteLine("#**************************************#");
Console.WriteLine("# #");
Console.WriteLine("# --- MENU PRINCIPAL --- #");
Console.WriteLine("# #");
Console.WriteLine("# 1 - Gerenciar Alunos #");
Console.WriteLine("# 2 - Gerenciar Cursos #");
Console.WriteLine("# 3 - Gerenciar Colaboradores #");
Console.WriteLine("# 4 - Sair #");
Console.WriteLine("# #");
Console.WriteLine("# #");
Console.WriteLine("#**************************************#");
Console.WriteLine();
Console.Write("Digite sua opcao: ");
int opcaoMenuPrincipal = int.Parse(Console.ReadLine());
switch (opcaoMenuPrincipal)
{
case 1:
Console.Clear();
Console.WriteLine("#**************************************#");
Console.WriteLine("# #");
Console.WriteLine("# --- MENU ALUNO --- #");
Console.WriteLine("# #");
Console.WriteLine("# 1 - Incluir aluno #");
Console.WriteLine("# 2 - Alterar aluno #");
Console.WriteLine("# 3 - Pesquisar aluno #");
Console.WriteLine("# 4 - Excluir aluno #");
Console.WriteLine("# 5 - Voltar ao menu principal #");
Console.WriteLine("# #");
Console.WriteLine("#**************************************#");
Console.WriteLine();
Console.Write("Digite sua opcao: ");
int opcaoMenuAluno = int.Parse(Console.ReadLine());
while(opcaoMenuAluno != 5)
{
switch (opcaoMenuAluno)
{
case 1:
Console.Clear();
Console.WriteLine("Teste");
break;
case 2:
Console.Clear();
break;
case 3:
Console.Clear();
break;
case 4:
Console.Clear();
break;
case 5:
//Console.Clear();
opcaoMenuAluno = 5;
//FimExecucaoMenu = false;
break;
default:
//Console.Clear();
break;
}
}
break;
case 2:
Console.Clear();
Console.WriteLine("#**************************************#");
Console.WriteLine("# #");
Console.WriteLine("# --- MENU CURSO --- #");
Console.WriteLine("# #");
Console.WriteLine("# 1 - Incluir curso #");
Console.WriteLine("# 2 - Alterar curso #");
Console.WriteLine("# 3 - Pesquisar curso #");
Console.WriteLine("# 4 - Excluir curso #");
Console.WriteLine("# 5 - Voltar ao menu principal #");
Console.WriteLine("# #");
Console.WriteLine("#**************************************#");
Console.WriteLine();
Console.Write("Digite sua opcao: ");
break;
case 3:
Console.WriteLine("Teste!!");
break;
case 4:
FimExecucaoMenu = false;
break;
default:
break;
}
} while (FimExecucaoMenu);
//Console.ReadKey();
}
}
}
Estou tentando criar um menu e dentro dele terá algumas opções, sendo que a última sempre deve ser voltar ao menu principal até que aperte o número 4 para sair...
Consegui fazer ele mostrar o primeiro sub-menu, porem a primeira opção dele (incluir aluno) fica em looping
O segundo menu e o terceiro não estão entrando também.
Alguém poderia me ajudar?
Obrigado!!
using AulaOrientaçãoObjetos.Modelo;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AulaOrientaçãoObjetos
{
public class Program
{
static void Main(string[] args)
{
Pessoa pessoa = new Pessoa();
List<Pessoa> pessoas = new List<Pessoa>();
bool FimExecucaoMenu = true;
do
{
Console.Clear();
Console.WriteLine("#**************************************#");
Console.WriteLine("# #");
Console.WriteLine("# --- MENU PRINCIPAL --- #");
Console.WriteLine("# #");
Console.WriteLine("# 1 - Gerenciar Alunos #");
Console.WriteLine("# 2 - Gerenciar Cursos #");
Console.WriteLine("# 3 - Gerenciar Colaboradores #");
Console.WriteLine("# 4 - Sair #");
Console.WriteLine("# #");
Console.WriteLine("# #");
Console.WriteLine("#**************************************#");
Console.WriteLine();
Console.Write("Digite sua opcao: ");
int opcaoMenuPrincipal = int.Parse(Console.ReadLine());
switch (opcaoMenuPrincipal)
{
case 1:
Console.Clear();
Console.WriteLine("#**************************************#");
Console.WriteLine("# #");
Console.WriteLine("# --- MENU ALUNO --- #");
Console.WriteLine("# #");
Console.WriteLine("# 1 - Incluir aluno #");
Console.WriteLine("# 2 - Alterar aluno #");
Console.WriteLine("# 3 - Pesquisar aluno #");
Console.WriteLine("# 4 - Excluir aluno #");
Console.WriteLine("# 5 - Voltar ao menu principal #");
Console.WriteLine("# #");
Console.WriteLine("#**************************************#");
Console.WriteLine();
Console.Write("Digite sua opcao: ");
int opcaoMenuAluno = int.Parse(Console.ReadLine());
while(opcaoMenuAluno != 5)
{
switch (opcaoMenuAluno)
{
case 1:
Console.Clear();
Console.WriteLine("Teste");
break;
case 2:
Console.Clear();
break;
case 3:
Console.Clear();
break;
case 4:
Console.Clear();
break;
case 5:
//Console.Clear();
opcaoMenuAluno = 5;
//FimExecucaoMenu = false;
break;
default:
//Console.Clear();
break;
}
}
break;
case 2:
Console.Clear();
Console.WriteLine("#**************************************#");
Console.WriteLine("# #");
Console.WriteLine("# --- MENU CURSO --- #");
Console.WriteLine("# #");
Console.WriteLine("# 1 - Incluir curso #");
Console.WriteLine("# 2 - Alterar curso #");
Console.WriteLine("# 3 - Pesquisar curso #");
Console.WriteLine("# 4 - Excluir curso #");
Console.WriteLine("# 5 - Voltar ao menu principal #");
Console.WriteLine("# #");
Console.WriteLine("#**************************************#");
Console.WriteLine();
Console.Write("Digite sua opcao: ");
break;
case 3:
Console.WriteLine("Teste!!");
break;
case 4:
FimExecucaoMenu = false;
break;
default:
break;
}
} while (FimExecucaoMenu);
//Console.ReadKey();
}
}
}
Daniel
Curtir tópico
+ 0
Responder
Posts
14/02/2017
Victor Machado
Olá Daniel,
O problema é que você só está definindo um novo valor para a variável opcaoMenuAluno fora do while, assim ele vai ficar em loop eternamente.
Qualquer outra dúvida, só falar.
O problema é que você só está definindo um novo valor para a variável opcaoMenuAluno fora do while, assim ele vai ficar em loop eternamente.
Qualquer outra dúvida, só falar.
Responder
Clique aqui para fazer login e interagir na Comunidade :)