Ejercicio
Rectángulo V3
Objetivo
Escriba un programa de C# para pedir al usuario su nombre y un tamaño, y muestre un rectángulo hueco con él:
Introduce tu nombre: Yo
Tamaño de entrada: 4
YoYoYoYoYo
Yo____Yo
Yo____Yo
YoYoYoYoYo
(nota: los guiones bajos _ no deben mostrarse en la pantalla; el programa debe mostrar espacios en blanco dentro del rectángulo)
Código de Ejemplo
using System; // Import the System namespace for basic functionality
using System.Linq; // Import the LINQ namespace for Enumerable.Repeat
class Program // Define the main class
{
static void Main() // The entry point of the program
{
// Ask the user for their name and size of the rectangle
Console.Write("Enter your name: ");
string name = Console.ReadLine(); // Read the user's input as a string
Console.Write("Enter size (minimum 2): ");
int size;
// Validate the size input
while (!int.TryParse(Console.ReadLine(), out size) || size < 2)
{
Console.Write("Please enter a valid size (minimum 2): ");
}
// Print the top and bottom edges of the rectangle
string topBottom = string.Concat(Enumerable.Repeat(name, size));
Console.WriteLine(topBottom); // Print the top edge
// Print the middle rows of the rectangle
for (int i = 1; i < size - 1; i++)
{
// Print the left part, followed by spaces, and then the right part
Console.Write(name); // Print the first part of the name
Console.Write(new string(' ', (size - 2) * name.Length)); // Print spaces
Console.WriteLine(name); // Print the last part of the name
}
// Print the bottom edge of the rectangle (same as the top)
if (size > 1) // To prevent repeating the top if the size is 1
{
Console.WriteLine(topBottom); // Print the bottom edge
}
}
}