tabla + coffetable + leg Ejercicio C# - Curso de Programación C# (C Sharp)

 Ejercicio

tabla + coffetable + leg

 Objetivo

Amplíe el ejemplo de las tablas y las mesas de centro, para agregar una clase "Leg" con un método "ShowData", que escribirá "I am a leg" y luego mostrará los datos de la tabla a la que pertenece.

Elija una tabla en el ejemplo, agréguele una pata y pídale a esa pierna que muestre sus datos.

 Código de Ejemplo

// Importing the System namespace for basic system functionalities like Console for input/output
using System;

public class Table
{
    // Private fields for the width and height of the table
    private double width;
    private double height;

    // Constructor to set the width and height of the table
    public Table(double width, double height)
    {
        this.width = width; // Setting the width of the table
        this.height = height; // Setting the height of the table
    }

    // Method to show the data of the table
    public void ShowData()
    {
        Console.WriteLine($"Table width: {width} cm, height: {height} cm"); // Displaying the table's dimensions
    }

    // Getter for the width of the table
    public double GetWidth()
    {
        return width; // Returning the width
    }

    // Getter for the height of the table
    public double GetHeight()
    {
        return height; // Returning the height
    }
}

public class CoffeeTable : Table
{
    // Constructor for CoffeeTable, calling the base class constructor (Table)
    public CoffeeTable(double width, double height) : base(width, height) { }

    // Overriding the ShowData method to add "(Coffee table)" after displaying the dimensions
    public new void ShowData()
    {
        base.ShowData(); // Displaying the table's dimensions
        Console.WriteLine("(Coffee table)"); // Indicating that this is a coffee table
    }
}

public class Leg
{
    // Private field for the leg's position
    private string position;

    // Constructor to set the position of the leg
    public Leg(string position)
    {
        this.position = position; // Setting the position of the leg (e.g., front-left, back-right)
    }

    // Method to show the data of the leg
    public void ShowData(Table table)
    {
        Console.WriteLine($"I am a leg."); // Displaying that it is a leg
        table.ShowData(); // Displaying the data of the table to which the leg belongs
    }
}

public class Program
{
    public static void Main()
    {
        // Creating a new CoffeeTable object with random sizes
        CoffeeTable coffeeTable = new CoffeeTable(100, 60); // Width = 100 cm, Height = 60 cm

        // Creating a new Leg object positioned at "front-left"
        Leg leg = new Leg("front-left");

        // Showing the data of the coffee table
        coffeeTable.ShowData(); // Displaying the dimensions and the fact that it's a coffee table

        // Asking the leg to display its data, which will also display the data of the table
        leg.ShowData(coffeeTable); // Displaying that it's a leg and showing the coffee table's data
    }
}

Más ejercicios C# Sharp de POO Más sobre Clases

 Matriz de objetos: tabla
Cree una clase denominada "Table". Debe tener un constructor, indicando el ancho y alto de la placa. Tendrá un método "ShowData" que escribirá en la p...
 House
Cree una clase "House", con un atributo "area", un constructor que establezca su valor y un método "ShowData" para mostrar "Soy una casa, mi área es d...
 Tabla + coffetable + array
Cree un proyecto denominado "Tablas2", basado en el proyecto "Tablas". En él, cree una clase "CoffeeTable" que herede de "Table". Su método "ShowDa...
 Encriptador
Cree una clase "Encrypter" para cifrar y descifrar texto. Tendrá un método "Encrypt", que recibirá una cadena y devolverá otra cadena. Será un méto...
 Números complejos
Un número complejo tiene dos partes: la parte real y la parte imaginaria. En un número como a+bi (2-3i, por ejemplo) la parte real sería "a" (2) y la ...
 Catálogo
Cree el diagrama de clases y, a continuación, con Visual Studio, un proyecto y las clases correspondientes para una utilidad de catálogo: Podrá alm...
 Número aleatorio
Cree una clase RandomNumber, con tres métodos estáticos: - GetFloat devolverá un número entre 0 y 1 utilizando el siguiente algoritmo: semilla =...
 Texto a HTML
Crear una clase "TextToHTML", que debe ser capaz de convertir varios textos introducidos por el usuario en una secuencia HTML, como esta: Hola Soy...
 Clase ScreenText
Cree una clase ScreenText, para mostrar un texto determinado en coordenadas de pantalla especificadas. Debe tener un constructor que recibirá X, Y y l...
 Clase ComplexNumber mejorada
Mejore la clase "ComplexNumber", para que sobrecargue los operadores + y - para sumar y restar números....
 Punto 3D
Cree una clase "Point3D", para representar un punto en el espacio 3D, con coordenadas X, Y y Z. Debe contener los siguientes métodos: MoveTo, que c...
 Catálogo + Menú
Mejorar el programa Catálogo, de forma que "Principal" muestre un menú que permita introducir nuevos datos de cualquier tipo, así como visualizar todo...

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