Bucle anidado
Parte de la sección Fundamentos del Journey de C# de Coddy — lección 46 de 69.
Un bucle anidado es simplemente un bucle dentro de otro bucle. El bucle interno completará todas sus iteraciones por cada iteración individual del bucle externo.
Una buena analogía para esto es un reloj: por cada hora (bucle externo), el minutero (bucle interno) debe completar su ciclo completo de 60 minutos.
Ejemplo de un bucle anidado:
for (int x = 0; x < 2; x++) {
for (int y = 0; y < 2; y++) {
Console.WriteLine(x + " " + y);
}
}
// Esto mostrará:
// 0 0
// 0 1
// 1 0
// 1 1El bucle externo (x) se ejecuta dos veces, y por cada una de esas veces, el bucle interno (y) se ejecuta dos veces — lo que significa que el cuerpo del bucle interno se ejecuta un total de 4 veces.
También es posible que necesites Console.Write() cuando trabajes con bucles anidados. A diferencia de Console.WriteLine(), que imprime texto y pasa a una nueva línea, Console.Write() imprime texto sin añadir un salto de línea al final. Esto te permite construir la salida en la misma línea:
for (int y = 0; y < 4; y++) {
Console.Write("* ");
}
Console.WriteLine();
// This will output:
// * * * * Aquí, Console.Write() sigue imprimiendo en la misma línea, y Console.WriteLine() al final se mueve a la siguiente línea.
Desafío
PrincipianteEscribe un programa que imprima un rectángulo de asteriscos (*) con un ancho y alto dados.
Entrada: Dos números enteros: width y height
Por ejemplo:
Si width = 5 y height = 3, la salida debería ser:
*****
*****
*****Si width = 4 y height = 6, la salida debería ser:
****
****
****
****
****
****Pruébalo tú mismo
using System;
public class Program {
public static void Main(string[] args) {
int width = int.Parse(Console.ReadLine());
int height = int.Parse(Console.ReadLine());
// Escribe tu código debajo
}
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 1
Operadores aritméticosOperador de móduloIncremento/DecrementoPost-incremento/decrementoAtajos aritméticos7Entrada y Salida Básica
Salida BásicaInterpolación de CadenasLectura de EntradaParseoResumen - Hasta 120Resumen - Verdadero o Falso5Operadores Parte 2
Operadores de comparaciónOperadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 33Variables Parte 2
VarConstantesConvenciones de NomenclaturaResumen - Inicializar VariablesConversión de Tipos6Toma de decisiones
Sentencia IfIf - ElseSentencia SwitchOperador ternarioResumen - If ElseIf - Else anidados