C#: Agenda básica en C# (1)
Agenda básica, para guardar datos de hasta 1000 personas. Permite añadir y buscar.
Lenguaje: C# (compilador: Mono 2.10.6)
Categoría: Básico
// Fuente procedente de ErrorDeSintaxis.es
// Agenda básica, para guardar datos de hasta
// 1000 personas. Permite añadir y buscar.
// Compilador: Mono 2.10.6
// Nivel: Básico
// Disponible desde 23/12/2011
// Aportado por Nacho
// Autor original: Nacho Cabanes
// Web original: http://www.nachocabanes.com/csharp/curso/
/* Agenda básica, para guardar datos de hasta 1000 personas. De cada persona, se almacena el nombre, correo electrónico y año de nacimiento. Permite: añadir un dato, mostrar todos, buscar */ using System; public class Agenda1 { struct tipoPersona { public string nombre; public string email; public ushort anyoNacimiento; } public static void Main() { int capacidad = 100; tipoPersona[] gente = new tipoPersona[capacidad]; int cantidad = 0; string opcion; // Bucle principal do { Console.WriteLine("Agenda básica"); Console.WriteLine(); Console.WriteLine("1- Añadir una nueva persona"); Console.WriteLine("2- Ver nombres de todos"); Console.WriteLine("3- Buscar una persona"); Console.WriteLine("0- Salir"); Console.Write("Escoja una opción: "); opcion = Console.ReadLine(); Console.WriteLine(); switch (opcion) { case "1": // Añadir datos de una persona if (cantidad < capacidad - 1) { Console.WriteLine("Introduciendo la persona {0}", cantidad + 1); Console.Write("Introduzca el nombre: "); gente[cantidad].nombre = Console.ReadLine(); Console.Write("Introduzca el correo electrónico: "); gente[cantidad].email = Console.ReadLine(); Console.Write("Introduzca el año de nacimiento: "); gente[cantidad].anyoNacimiento = Convert.ToUInt16(Console.ReadLine()); cantidad++; Console.WriteLine(); } else Console.WriteLine("Base de datos llena"); break; case "2": // Ver nombres de todos if (cantidad == 0) Console.WriteLine("No hay datos"); else for (int i = 0; i < cantidad; i++) Console.WriteLine("{0}: {1}", i + 1, gente[i].nombre); Console.WriteLine(); break; case "3": // Buscar una persona Console.Write("¿Qué texto busca? "); string buscar = Console.ReadLine(); bool encontrado = false; for (int i = 0; i < cantidad; i++) if (buscar.ToUpper() == gente[i].nombre.ToUpper()) { encontrado = true; Console.WriteLine( "{0}: Nombre: {1}, Email: {2}, Nacido en: {3}", i + 1, gente[i].nombre, gente[i].email, gente[i].anyoNacimiento); } if (!encontrado) { Console.WriteLine("No se ha encontrado."); Console.WriteLine(); } Console.WriteLine(); break; case "0": // Salir de la aplicación Console.WriteLine(); Console.WriteLine("Saliendo..."); Console.WriteLine(); break; default: Console.WriteLine(); Console.WriteLine("Opción incorrecta!"); Console.WriteLine(); break; } } while (opcion != "0"); } }
Resultado:
Agenda básica 1- Añadir una nueva persona 2- Ver nombres de todos 3- Buscar una persona 0- Salir Escoja una opción: 1 Introduciendo la persona 1 Introduzca el nombre: Nacho Introduzca el correo electrónico: 1@1.1 Introduzca el año de nacimiento: 1900 Agenda básica 1- Añadir una nueva persona 2- Ver nombres de todos 3- Buscar una persona 0- Salir Escoja una opción: 1 Introduciendo la persona 2 Introduzca el nombre: Héctor Introduzca el correo electrónico: 2@2.2 Introduzca el año de nacimiento: 2000 Agenda básica 1- Añadir una nueva persona 2- Ver nombres de todos 3- Buscar una persona 0- Salir Escoja una opción: 2 1: Nacho 2: Héctor Agenda básica 1- Añadir una nueva persona 2- Ver nombres de todos 3- Buscar una persona 0- Salir Escoja una opción: 3 ¿Qué texto busca? nacho 1: Nombre: Nacho, Email: 1@1.1, Nacido en: 1900 Agenda básica 1- Añadir una nueva persona 2- Ver nombres de todos 3- Buscar una persona 0- Salir Escoja una opción: 0 Saliendo...