Versión Mejorada De La Base De Datos De Tareas Con Funciones

Este programa en C# muestra una versión mejorada de una base de datos de tareas, dividiéndola en diferentes funciones. Permite al usuario gestionar una lista de tareas, como añadir, mostrar y eliminar tareas de la base de datos. El programa utiliza varias funciones para gestionar estas tareas, lo que hace que el código sea más organizado y fácil de mantener. El usuario interactúa con el programa mediante un sencillo menú de texto, donde puede seleccionar diferentes operaciones en la lista de tareas.



Grupo

Funciones en C#

Objectivo

1. Defina una clase de tarea para representar una tarea con propiedades como nombre, descripción y fecha de vencimiento.
2. Cree una función para mostrar todas las tareas de la lista.
3. Implemente una función para añadir nuevas tareas a la lista.
4. Cree una función para eliminar una tarea por su índice.
5. Implemente una interfaz de usuario simple basada en texto que permita al usuario elegir diferentes operaciones: añadir, mostrar, eliminar o salir de la tarea.
6. El programa debe estar organizado de forma que cada operación de tarea (añadir, eliminar, mostrar) esté encapsulada en su función correspondiente.

Escriba en C# una versión mejorada de la base de datos de tareas, dividiéndola en funciones.

Ejemplo de ejercicio en C#

 Copiar código C#
using System;
using System.Collections.Generic;

class Program
{
    // Define the Task class
    public class Task
    {
        public string Name { get; set; }
        public string Description { get; set; }
        public DateTime DueDate { get; set; }

        // Constructor to initialize a new task
        public Task(string name, string description, DateTime dueDate)
        {
            Name = name;
            Description = description;
            DueDate = dueDate;
        }
    }

    // Create a list to store tasks
    static List taskList = new List();

    // Function to display all tasks in the list
    public static void DisplayTasks()
    {
        if (taskList.Count == 0)
        {
            Console.WriteLine("No tasks available.");
            return;
        }

        Console.WriteLine("Tasks List:");
        foreach (var task in taskList)
        {
            Console.WriteLine($"Task: {task.Name}, Description: {task.Description}, Due Date: {task.DueDate.ToShortDateString()}");
        }
    }

    // Function to add a new task to the list
    public static void AddTask(string name, string description, DateTime dueDate)
    {
        taskList.Add(new Task(name, description, dueDate));
        Console.WriteLine("Task added successfully.");
    }

    // Function to remove a task by its index
    public static void RemoveTask(int index)
    {
        if (index >= 0 && index < taskList.Count)
        {
            taskList.RemoveAt(index);
            Console.WriteLine("Task removed successfully.");
        }
        else
        {
            Console.WriteLine("Invalid index. Task not found.");
        }
    }

    // Main method to display the menu and handle user input
    public static void Main()
    {
        int choice;

        do
        {
            // Display the menu
            Console.WriteLine("\nTask Manager Menu:");
            Console.WriteLine("1. Display Tasks");
            Console.WriteLine("2. Add Task");
            Console.WriteLine("3. Remove Task");
            Console.WriteLine("4. Exit");
            Console.Write("Enter your choice: ");
            choice = int.Parse(Console.ReadLine());

            switch (choice)
            {
                case 1:
                    DisplayTasks();
                    break;

                case 2:
                    // Prompt user for task details
                    Console.Write("Enter task name: ");
                    string name = Console.ReadLine();
                    Console.Write("Enter task description: ");
                    string description = Console.ReadLine();
                    Console.Write("Enter task due date (MM/DD/YYYY): ");
                    DateTime dueDate = DateTime.Parse(Console.ReadLine());

                    // Add the task
                    AddTask(name, description, dueDate);
                    break;

                case 3:
                    // Prompt user for task index to remove
                    Console.Write("Enter task index to remove: ");
                    int index = int.Parse(Console.ReadLine());

                    // Remove the task
                    RemoveTask(index);
                    break;

                case 4:
                    Console.WriteLine("Exiting the program.");
                    break;

                default:
                    Console.WriteLine("Invalid choice. Please try again.");
                    break;
            }

        } while (choice != 4);
    }
}

 Output

Task Manager Menu:
1. Display Tasks
2. Add Task
3. Remove Task
4. Exit
Enter your choice: 2
Enter task name: Finish homework
Enter task description: Complete the math assignment
Enter task due date (MM/DD/YYYY): 05/10/2025
Task added successfully.

Task Manager Menu:
1. Display Tasks
2. Add Task
3. Remove Task
4. Exit
Enter your choice: 1
Tasks List:
Task: Finish homework, Description: Complete the math assignment, Due Date: 05/10/2025

Task Manager Menu:
1. Display Tasks
2. Add Task
3. Remove Task
4. Exit
Enter your choice: 3
Enter task index to remove: 0
Task removed successfully.

Task Manager Menu:
1. Display Tasks
2. Add Task
3. Remove Task
4. Exit
Enter your choice: 4
Exiting the program.

Comparte este ejercicio de C#

Practica más ejercicios C# de Funciones en C#

¡Explora nuestro conjunto de ejercicios de práctica de C#! Diseñados específicamente para principiantes, estos ejercicios te ayudarán a desarrollar una sólida comprensión de los fundamentos de C#. Desde variables y tipos de datos hasta estructuras de control y funciones simples, cada ejercicio está diseñado para desafiarte gradualmente a medida que adquieres confianza en la programación en C#..