ErrorDeSintaxis

Pequeños fragmentos de código fuente en distintos lenguajes de programación, agrupados por categorías.

Puedes buscar entre los fuentes existentes, o aportar los tuyos.

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...