using System;
class Program
{
static void Main()
{
Console.Write("Ingrese la cantidad de números a ordenar: ");
int n = int.Parse(Console.ReadLine());
int[] arreglo = new int[n];
for (int i = 0; i < n; i++)
{
Console.Write($"Ingrese el número {i + 1}: ");
arreglo[i] = int.Parse(Console.ReadLine());
}
BubbleSort(arreglo);
Console.WriteLine("Arreglo ordenado:");
foreach (int numero in arreglo)
{
Console.Write(numero + " ");
}
Console.ReadKey();
}
static void BubbleSort(int[] arr)
{
int n = arr.Length;
for (int i = 0; i < n - 1; i++)
{
for (int j = 0; j < n - i - 1; j++)
{
if (arr[j] > arr[j + 1])
{
// Intercambiar elementos arr[j] y arr[j+1]
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
}
Explicación del código:
1. Main: En el método
Main, comenzamos pidiendo al usuario que ingrese la cantidad de números que desea ordenar (n). Luego, creamos un arregloarreglode tamañonpara almacenar esos números. A continuación, mediante un buclefor, solicitamos al usuario que ingrese los números uno por uno y los almacenamos en el arreglo.2. BubbleSort: En el método
BubbleSort, implementamos el algoritmo de ordenamiento de burbuja. El algoritmo consiste en recorrer el arreglo varias veces, comparando los elementos adyacentes y realizando intercambios si es necesario para colocar los elementos en la posición correcta.
nrepresenta la longitud del arreglo.- El primer bucle
for(índicei) recorre el arreglo desde el inicio hasta el penúltimo elemento. Esto se debe a que después de cada iteración del bucle, el elemento más grande ya está en su posición correcta, por lo que no es necesario seguir comparándolo. - El segundo bucle
for(índicej) compara los elementos adyacentes del arreglo desde el inicio hastan-i-1. Cada iteración de este bucle coloca el elemento más grande de los dos en la posición correcta (orden ascendente).
- Si el elemento en
arr[j]es mayor que el elemento enarr[j+1], se realiza un intercambio para que el elemento más grande quede en la posiciónj+1.
3. Imprimir resultado: Después de ordenar el arreglo usando el algoritmo de ordenamiento de burbuja, mostramos el arreglo ordenado en la consola.
Ejemplo de ejecución:
Supongamos que el usuario ingresa la siguiente secuencia de números para ordenar: 8, 3, 1, 7, 4
- 1. El programa le pedirá al usuario que ingrese la cantidad de números a ordenar: 5
- 2. Luego, el programa solicitará que ingrese los números uno por uno:
- Si el elemento en
arr[j]es mayor que el elemento enarr[j+1], se realiza un intercambio para que el elemento más grande quede en la posiciónj+1.
Ingrese el número 1: 8 Ingrese el número 2: 3 Ingrese el número 3: 1 Ingrese el número 4: 7 Ingrese el número 5: 4
Arreglo ordenado: 1 3 4 7 8

