Los bucles son estructuras de control que permiten ejecutar un bloque de código repetidamente mientras se cumpla una condición específica. En C#, existen varios tipos de bucles que se pueden utilizar dependiendo de la situación: for
, while
, do-while
y foreach
. En esta sección, exploraremos cada uno de estos bucles con ejemplos prácticos y ejercicios.
- Bucle
for
for
El bucle for
se utiliza cuando se conoce de antemano el número de iteraciones que se deben realizar. La estructura básica de un bucle for
es la siguiente:
Ejemplo:
using System; class Program { static void Main() { for (int i = 0; i < 5; i++) { Console.WriteLine("Iteración: " + i); } } }
Explicación:
int i = 0
: Inicializa la variablei
a 0.i < 5
: La condición que debe cumplirse para que el bucle continúe ejecutándose.i++
: Incrementai
en 1 después de cada iteración.
Ejercicio 1:
Escribe un programa que imprima los números del 1 al 10 utilizando un bucle for
.
Solución:
using System; class Program { static void Main() { for (int i = 1; i <= 10; i++) { Console.WriteLine(i); } } }
- Bucle
while
while
El bucle while
se utiliza cuando no se conoce de antemano el número de iteraciones y se desea que el bucle continúe ejecutándose mientras se cumpla una condición.
Ejemplo:
using System; class Program { static void Main() { int i = 0; while (i < 5) { Console.WriteLine("Iteración: " + i); i++; } } }
Explicación:
int i = 0
: Inicializa la variablei
a 0.i < 5
: La condición que debe cumplirse para que el bucle continúe ejecutándose.i++
: Incrementai
en 1 después de cada iteración.
Ejercicio 2:
Escribe un programa que imprima los números del 1 al 10 utilizando un bucle while
.
Solución:
using System; class Program { static void Main() { int i = 1; while (i <= 10) { Console.WriteLine(i); i++; } } }
- Bucle
do-while
do-while
El bucle do-while
es similar al bucle while
, pero garantiza que el bloque de código se ejecute al menos una vez, ya que la condición se evalúa después de la primera iteración.
Ejemplo:
using System; class Program { static void Main() { int i = 0; do { Console.WriteLine("Iteración: " + i); i++; } while (i < 5); } }
Explicación:
int i = 0
: Inicializa la variablei
a 0.i < 5
: La condición que debe cumplirse para que el bucle continúe ejecutándose.i++
: Incrementai
en 1 después de cada iteración.
Ejercicio 3:
Escribe un programa que imprima los números del 1 al 10 utilizando un bucle do-while
.
Solución:
using System; class Program { static void Main() { int i = 1; do { Console.WriteLine(i); i++; } while (i <= 10); } }
- Bucle
foreach
foreach
El bucle foreach
se utiliza para iterar sobre una colección (como un array o una lista) sin necesidad de gestionar el índice de la colección manualmente.
Ejemplo:
using System; class Program { static void Main() { int[] numeros = { 1, 2, 3, 4, 5 }; foreach (int numero in numeros) { Console.WriteLine("Número: " + numero); } } }
Explicación:
int[] numeros = { 1, 2, 3, 4, 5 }
: Define un array de enteros.foreach (int numero in numeros)
: Itera sobre cada elemento del arraynumeros
.
Ejercicio 4:
Escribe un programa que imprima cada carácter de una cadena utilizando un bucle foreach
.
Solución:
using System; class Program { static void Main() { string texto = "Hola Mundo"; foreach (char caracter in texto) { Console.WriteLine(caracter); } } }
Resumen
En esta sección, hemos aprendido sobre los diferentes tipos de bucles en C# (for
, while
, do-while
y foreach
). Cada tipo de bucle tiene su propio uso y es importante elegir el adecuado según la situación. Los ejercicios proporcionados te ayudarán a practicar y reforzar los conceptos aprendidos. En la siguiente sección, exploraremos las sentencias switch
para manejar múltiples condiciones de manera más eficiente.
Curso de Programación en C#
Módulo 1: Introducción a C#
- Introducción a C#
- Configuración del Entorno de Desarrollo
- Programa Hola Mundo
- Sintaxis y Estructura Básica
- Variables y Tipos de Datos
Módulo 2: Estructuras de Control
Módulo 3: Programación Orientada a Objetos
- Clases y Objetos
- Métodos
- Constructores y Destructores
- Herencia
- Polimorfismo
- Encapsulamiento
- Abstracción
Módulo 4: Conceptos Avanzados de C#
- Interfaces
- Delegados y Eventos
- Genéricos
- Colecciones
- LINQ (Consulta Integrada en el Lenguaje)
- Programación Asíncrona
Módulo 5: Trabajando con Datos
Módulo 6: Temas Avanzados
- Reflexión
- Atributos
- Programación Dinámica
- Gestión de Memoria y Recolección de Basura
- Multihilo y Programación Paralela
Módulo 7: Construcción de Aplicaciones
Módulo 8: Mejores Prácticas y Patrones de Diseño
- Estándares de Codificación y Mejores Prácticas
- Patrones de Diseño
- Pruebas Unitarias
- Revisión y Refactorización de Código