Foros del Web » Programación para mayores de 30 ;) » .NET »

C# - matrices bidimensionales

Estas en el tema de C# - matrices bidimensionales en el foro de .NET en Foros del Web. Buenas, primero que nada les doy las gracias por la ayuda , comencemos con el problema que se me planteo al querer hacer una especie ...
  #1 (permalink)  
Antiguo 12/06/2012, 16:36
 
Fecha de Ingreso: junio-2012
Mensajes: 1
Antigüedad: 12 años, 5 meses
Puntos: 0
C# - matrices bidimensionales

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

Etiquetas: bidimensionales, matrices
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:15.