ArrayList de puntos Ejercicio C# - Curso de Programación C# (C Sharp)

 Ejercicio

ArrayList de puntos

 Objetivo

Cree una estructura "Point3D", para representar un punto en el espacio 3-D, con coordenadas X, Y y Z.

Cree un programa con un menú, en el que el usuario pueda elegir:
- Agregar datos para un punto
- Mostrar todos los puntos ingresados
- Salir del programa

DEBE usar ArrayList, en lugar de matrices.

 Código de Ejemplo

// Import necessary namespaces for using ArrayList and other basic operations
using System;  // Basic namespace for console input/output and fundamental operations
using System.Collections;  // For using ArrayList

// Define the structure for representing a point in 3D space
struct Point3D
{
    // Properties to store the X, Y, and Z coordinates of the point
    public double X;  // X-coordinate
    public double Y;  // Y-coordinate
    public double Z;  // Z-coordinate

    // Constructor to initialize the coordinates of the point
    public Point3D(double x, double y, double z)
    {
        X = x;  // Set X-coordinate
        Y = y;  // Set Y-coordinate
        Z = z;  // Set Z-coordinate
    }

    // Method to display the point in a readable format
    public void DisplayPoint()
    {
        // Display the point's coordinates as (X, Y, Z)
        Console.WriteLine($"Point: ({X}, {Y}, {Z})");
    }
}

class Program
{
    // Main method to execute the program
    static void Main(string[] args)
    {
        // Create an ArrayList to store points
        ArrayList points = new ArrayList();  // ArrayList to hold Point3D objects
        string choice;  // Variable to store user's menu choice

        // Display the program menu
        do
        {
            // Display menu options to the user
            Console.Clear();  // Clear the console for a fresh display
            Console.WriteLine("3D Point Manager");
            Console.WriteLine("1. Add a point");
            Console.WriteLine("2. Display all points");
            Console.WriteLine("3. Exit");
            Console.Write("Enter your choice: ");
            choice = Console.ReadLine();  // Get the user's menu choice

            // Perform actions based on the user's choice
            switch (choice)
            {
                case "1":
                    // Add a new point
                    Console.Write("Enter X coordinate: ");
                    double x = Convert.ToDouble(Console.ReadLine());  // Read X-coordinate
                    Console.Write("Enter Y coordinate: ");
                    double y = Convert.ToDouble(Console.ReadLine());  // Read Y-coordinate
                    Console.Write("Enter Z coordinate: ");
                    double z = Convert.ToDouble(Console.ReadLine());  // Read Z-coordinate

                    // Create a new Point3D object with the provided coordinates
                    Point3D newPoint = new Point3D(x, y, z);

                    // Add the point to the ArrayList
                    points.Add(newPoint);  // Store the new point in the ArrayList
                    Console.WriteLine("Point added successfully.");
                    break;

                case "2":
                    // Display all entered points
                    Console.WriteLine("Displaying all points:");
                    foreach (Point3D point in points)  // Iterate through each point in the ArrayList
                    {
                        point.DisplayPoint();  // Call DisplayPoint method to show the point
                    }
                    break;

                case "3":
                    // Exit the program
                    Console.WriteLine("Exiting the program...");
                    break;

                default:
                    // Handle invalid input
                    Console.WriteLine("Invalid choice, please try again.");
                    break;
            }

            // Wait for the user to press a key before showing the menu again
            if (choice != "3")
            {
                Console.WriteLine("\nPress any key to continue...");
                Console.ReadKey();
            }

        } while (choice != "3");  // Repeat the menu until the user chooses to exit
    }
}

Más ejercicios C# Sharp de Gestión Dinámica de Memoria

 Implementación de una cola usando una matriz
Implementación de una cola...
 Implementar una pila usando una matriz
Implementar una pila...
 Colecciones de colas
Cree una cola de cadenas, utilizando la clase Queue que ya existe en la plataforma DotNet. Una vez creado, muestra todos los elementos almacenados ...
 Notación Polish inversa de pila de cola
Cree un programa que lea desde un archivo de texto una expresión en notación polaca inversa como, por ejemplo: 3 4 6 5 - + * 6 + (Resultado 21) ...
 ArrayList
Cree una lista de cadenas utilizando la clase ArrayList que ya existe en la plataforma DotNet. Una vez creado, muestra todos los elementos almacena...
 ArrayList duplicar un archivo de texto
Cree un programa que lea desde un archivo de texto y lo almacene en otro archivo de texto invirtiendo las líneas. Por lo tanto, un archivo de texto...
 Suma ilimitada
Cree un programa para permitir que el usuario ingrese una cantidad ilimitada de números. Además, pueden ingresar los siguientes comandos: "suma", par...
 ArrayList - Lector de archivos de texto
Entregue aquí su lector básico de archivos de texto. Este lector de archivos de texto siempre muestra 21 líneas del archivo de texto, y el usuario ...
 Hast Table - Diccionario
Entregue aquí su diccionario usando Hash Table...
 Paréntesis
Implementar una función para comprobar si una secuencia de paréntesis abierto y cerrado está equilibrada, es decir, si cada paréntesis abierto corresp...
 Mezclar y ordenar archivos
Cree un programa para leer el contenido de dos archivos diferentes y mostrarlo mezclado y ordenado alfabéticamente. Por ejemplo, si los archivos conti...
 Buscar en archivo
Cree un programa para leer un archivo de texto y pida al usuario oraciones para buscar en él. Leerá todo el archivo, lo almacenará en un ArrayList,...

Juan A. Ripoll - Tutoriales y Cursos de Programacion© 2025 Todos los derechos reservados.  Condiciones legales.