En esta ocasión les comparto un algoritmo que permite ordenar de mayor a menor los promedios y los nombres de n alumnos de una escuela.
Se tienen los nombres de los N alumnos de una escuela, además de su promedio general. Realice un algoritmo para capturar esta información, la cual se debe almacenar en arreglos, un vector para el nombre y otro para el promedio, después de capturar la información se debe ordenar con base en su promedio, de mayor a menor, los nombres deben corresponder con los promedios.
Bien como ya es costumbre en este Blog vamos a explicar el funcionamiento de este algoritmo, entonces lo primero que hacemos es ponerle un nombre.
Algoritmo detarea
Declaramos las variables.
Definir n,x,a,vector2, temp2 Como Entero
Definir vector1,temp1 Como Carácter
Pedimos que se ingrese el número de alumnos.
Escribir «Ingresa el número de alumnos»
Este número lo ingresamos en la variable n.
leer n
Colocamos el tamaño de los vectores, como puedes ver la variable n, me sirve para esto.
Dimension vector1[n],vector2[n]
Utilizo un ciclo «PARA» que se repite n veces.
para x = 1 Hasta n Con Paso 1 Hacer
En cada bucle pedimos el nombre del alumno.
Escribir «Ingresa tu nombre»
Los nombres los almaceno en el vector 1.
leer vector1(x)
También pedimos el promedio.
Escribir «Ingresa tu promedio»
Los promedios los almaceno en el vector 2.
leer vector2(x)
FinPara
Utilizo el método de la burbuja para ordenar los promedios, no entrare en detalles de cómo funciona este método ya que tengo una entrada donde lo explico, échale un ojo.
para x = 2 Hasta n Con Paso 1 Hacer
para a = 1 Hasta n – 1 Con Paso 1 Hacer
si vector2(a) > vector2(a+1) Entonces
temp2 = vector2(a)
vector2(a) = vector2(a+1)
vector2(a+1) = temp2
Cada que muevo un elemento del vector 2, también lo hago en el vector 1, de este manera ordeno los promedios y los nombres.
temp1 = vector1(a)
vector1(a) = vector1(a+1)
vector1(a+1) = temp1
FinSi
FinPara
FinPara
Finalmente utilizamos otro ciclo “PARA” con el que muestro los nombres y los promedios ordenados.
para x = 1 Hasta n Con Paso 1 Hacer
Escribir vector1(x),» – «,vector2(x)
FinPara
FinAlgoritmo
Aquí puedes ver el funcionamiento de este algoritmo.
Bien pues espero que comprendan el funcionamiento de este algoritmo, les comparto el código fuente para que lo copien y lo prueben, un saludo y nos vemos en la próxima entrega.
Tus ejercicios de algoritmos me han ayudado bastante y he aprendido mucho. Me alegro de haber encontrado tu blog. Haces un muy buen trabajo!
Que bueno que te puedan servir, un saludo