Buenas, primero que nada les doy las gracias por la ayuda , comencemos con el problema que se me planteo al querer hacer una especie de menú en consola donde se pueda agregar cédulas, el programa básicamente debe tener estas funciones; poder agregar de a UNA cédula por vez, no se pueden REPETIR, y debe MOSTRAR las cédulas ingresadas.
Bueno, básicamente ya lo tengo terminado el problema es que al querer intentar de agregar de a una cédula.. me las pide todas.. creo que es debido al For.
Les muestro el código haber si me pueden dar una mano;
************************************************** **********
namespace Cedulas
{
class Program
{
static void Mostrar(string[,] a)
{
// METODO: MUESTRA LAS CEDULAS REGISTRADAS
for (int i = 0; i < a.GetLength(0); i++)
{
for (int j = 0; j < a.GetLength(1); j++)
{
Console.Write(a[i, j] + " ");
}
Console.WriteLine();
}
}
static bool BuscarCed(string[,] a, string ced)
{
// METODO: BUSCA SI LA CEDULA YA SE ENCUENTRA REGISTRADA
bool encontre = false;
for (int i = 0; i < a.GetLength(0); i++)
{
for (int j = 0; j < a.GetLength(1); j++)
{
if (a[i, j] == ced)
{
encontre = true;
break;
}
}
if (encontre)
{
break;
}
}
return encontre;
}
static void Main(string[] args)
{
string[,] a = new string[3, 3];
bool continuar = true;
while (continuar)
{
Console.WriteLine("* * * * * * * * * *\n");
Console.Write(" HELP ME !!\n\n");
Console.WriteLine(" 1. Ingresar Cedula");
Console.WriteLine(" 2. Mostrar Cedulas\n");
Console.WriteLine(" 0. Salir\n");
Console.WriteLine("* * * * * * * * * *\n");
int opcion = int.Parse(Console.ReadLine());
Console.Clear();
switch (opcion)
{
case 0:
{
continuar = false;
Console.Write("Saliendo");
break;
}
case 1:
{
// DEBE AGREGAR UNA CEDULA Y VOLVER AL MENU PRINCIPAL.
for (int i = 0; i < a.GetLength(0); i++)
{
for (int j = 0; j < a.GetLength(1); j++)
{
Console.WriteLine("Ingrese comp:");
string ced = Console.ReadLine();
// LLAMA AL METODO DE BUSQUEDA
bool encontrado = BuscarCed(a, ced);
if (encontrado == true)
{
// ERROR: QUE YA SE ENCUENTRA
Console.WriteLine("La cedula ya se encuentra registrada.");
}
else if (encontrado == false)
{
// AGREGA: EN CASO DE QUE NO SE ENCUENTRE
a[i, j] = ced;
}
// CUANDO FINALIZE EL PRIMER CICLO DEBERIA VOLVER AL MENU
}
}
break;
}
case 2:
{
// MUESTRA LAS CEDULAS QUE SE ENCUENTREN EN LA MATRIZ
Mostrar(a);
break;
}
default:
{
Console.WriteLine("ERROR: Tecla Invalida.");
break;
}
}
}
Console.ReadLine();
}
}
}
************************************************** **********
Si me pudiera ayudar no tendría palabras de agradecimiento ya que hace unos días vengo con este problema que me esta haciendo quemar , como dije arriba solo necesitaría que al seleccionar la opción agregar pida la cédula, la agregue, y vuelva al menú principal, para poder seguir agregando o verlas.
Saludos