public Lista Interseccao(Lista b) { Lista r = new Lista(); NoLista aux = prim; while (aux != null) { if (b.pesquisar(aux.chave) != null) { r.inserir(new NoLista(aux.chave, aux.nome)); } aux = aux.prox; } return(r); }
public void Menu() { int opc; Lista l = new Lista(); do { Console.WriteLine("----------Menu----------"); Console.WriteLine("1 - INSERIR"); Console.WriteLine("2 - PESQUISAR"); Console.WriteLine("3 - IMPRIMIR LISTA"); Console.WriteLine("4 - REMOVER "); Console.WriteLine("5 - SAIR"); Console.Write("Opção:"); opc = Convert.ToInt32(Console.ReadLine()); int c; string nome; switch (opc) { case 1: Console.Write("Digite um nº (-1 para sair): "); c = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Digite um nome:"); nome = Console.ReadLine(); while (c != -1) { while (l.pesquisar(c) != null) { Console.WriteLine("Erro o valor inserido já existe na lista !!"); Console.Write("Digite outro nº (-1 para sair): "); c = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Digite um nome:"); nome = Console.ReadLine(); } l.inserir(new NoLista(c, nome)); Console.Write("Digite outro nº (-1 para sair): "); c = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Digite um nome:"); nome = Console.ReadLine(); } break; case 2: Console.Write("Digite um nº a ser pesquisado: "); c = Convert.ToInt32(Console.ReadLine()); NoLista n = l.pesquisar(c); if (n == null) { Console.WriteLine("Valor não encontrado!"); } else { Console.WriteLine("Achou: Chave: {0} nome: {1} ", n.chave, n.nome); } break; case 3: l.imprimir(); break; case 4: Console.WriteLine("Digite um número para remover da Lista:"); c = Convert.ToInt32(Console.ReadLine()); if (l.remover(c)) { Console.WriteLine("Item removido com sucesso !!"); } else { Console.WriteLine("Item não encontrado !!"); } break; case 5: Console.WriteLine("Saindo..."); break; default: l.TrocarChaves(); Console.WriteLine("Opção Inválida, digite novamente selecionando uma das opções do menu."); break; } } while (opc != 5); }
static void Main(string[] args) { Lista l = new Lista(); int c, opcao; string nome; Console.WriteLine("1)Inserir 2)Pesquisar 3)Imprimir 4)Sair 5)Maior"); opcao = Convert.ToInt32(Console.ReadLine()); while (opcao != 4) { if (opcao == 1) { Console.Write("Digite um nº (-1 para sair): "); c = int.Parse(Console.ReadLine()); while (c != -1) { if (l.pesquisar(c) == null) { // Console.Write("Digite outro nº (-1 para sair): "); Console.Write("Digite o nome:"); nome = Console.ReadLine(); l.inserir(new NoLista(c, nome)); } else { Console.Write("Número de chave repetido. Digite outro nº (-1 para sair): "); c = Convert.ToInt32(Console.ReadLine()); } Console.Write("Digite um nº (-1 para sair): "); c = int.Parse(Console.ReadLine()); } } if (opcao == 2) { Console.Write("Digite um nº a ser pesquisado: "); c = int.Parse(Console.ReadLine()); NoLista n = l.pesquisar(c); if (n == null) { Console.WriteLine("Valor não encontrado!"); } else { Console.WriteLine("Achou: " + n.chave); } } if (opcao == 3) { l.imprimir(); Console.WriteLine("maior chave: " + l.getMaior().chave + ": " + l.getMaior().nome); l.TrocarChaves(); l.imprimir(); Console.ReadKey(); } Console.WriteLine("1)Inserir 2)Pesquisar 3)Imprimir 4)Sair "); opcao = Convert.ToInt32(Console.ReadLine()); } Console.ReadKey(); }