
Aquí te presento un diagrama de flujo detallado para ordenar N números de forma ascendente, utilizando el algoritmo de ordenamiento por burbuja, uno de los métodos más sencillos para entender el concepto.
Inicio
El diagrama de flujo siempre comienza con un bloque de inicio. Este bloque indica el punto de partida del proceso. Simplemente se representa con un óvalo o un rectángulo redondeado que contiene la palabra "Inicio".
Leer N
Necesitamos saber cuántos números vamos a ordenar. El bloque "Leer N" representa la entrada de este valor. N será un número entero positivo.
Must Read
Leer los N Números
Ahora debemos leer los N números que el usuario quiere ordenar. Creamos un arreglo llamado A para almacenar estos números. Cada número se guarda en una posición diferente del arreglo, desde A[1] hasta A[N].
Inicializar i = 1
Necesitamos una variable de control, i, para recorrer el arreglo. La inicializamos en 1. Esta variable se usa en el bucle externo del algoritmo de la burbuja.

Bucle Externo: ¿i <= N-1?
Comienza un bucle que se repetirá mientras i sea menor o igual a N-1. Este bucle asegura que comparemos cada elemento del arreglo con sus sucesores. Si la condición es Verdadera, continuamos dentro del bucle. Si es Falsa, vamos al bloque de "Fin".
Inicializar j = 1
Dentro del bucle externo, inicializamos otra variable de control, j, en 1. Esta variable se usa en el bucle interno. Cada iteración del bucle externo reinicia j a 1.
Bucle Interno: ¿j <= N-i?
Comienza un bucle interno que se repetirá mientras j sea menor o igual a N-i. Este bucle compara elementos adyacentes en el arreglo. Si la condición es Verdadera, continuamos dentro del bucle. Si es Falsa, volvemos al bucle externo incrementando i.

¿A[j] > A[j+1]?
Este es el corazón del algoritmo de la burbuja. Comparamos el elemento en la posición j con el elemento en la posición j+1. Si A[j] es mayor que A[j+1] (condición Verdadera), entonces los intercambiamos. Si no (condición Falsa), continuamos con la siguiente comparación.
Intercambiar A[j] y A[j+1]
Si la condición anterior es verdadera, intercambiamos los valores de A[j] y A[j+1]. Esto se hace usando una variable auxiliar, por ejemplo, temp. Primero, guardamos el valor de A[j] en temp, luego asignamos el valor de A[j+1] a A[j], y finalmente asignamos el valor de temp a A[j+1].

Incrementar j (j = j + 1)
Después de la comparación (y posible intercambio), incrementamos j en 1. Esto nos permite avanzar a la siguiente pareja de elementos adyacentes en el arreglo.
Volver al Bucle Interno
Regresamos al bucle interno para continuar comparando y (si es necesario) intercambiando los elementos restantes hasta que j sea mayor que N-i.
Incrementar i (i = i + 1)
Cuando el bucle interno termina (j > N-i), incrementamos i en 1. Esto prepara el bucle externo para la siguiente pasada sobre el arreglo. Cada pasada coloca el elemento más grande no ordenado en su posición correcta al final del arreglo.

Volver al Bucle Externo
Regresamos al bucle externo para continuar ordenando los elementos restantes hasta que i sea mayor que N-1.
Mostrar Arreglo A
Una vez que ambos bucles han terminado, el arreglo A estará ordenado de forma ascendente. Este bloque representa la salida del arreglo ordenado. Se muestran los valores desde A[1] hasta A[N].
Fin
El diagrama de flujo termina con un bloque de "Fin". Este bloque indica que el proceso de ordenamiento ha completado.