martes, marzo 14, 2006

Ordenamiento de Arreglos

Ordenamiento de Arreglos

El método que vimos el día de hoy fue el MÉTODO DE LA BURBUJA.
El programa verifica desde la primera posición y compara con la posición siguiente si es mayor. De ser así, intercambia el contenido. Este proceso lo realiza hasta llegar al final del arreglo. Lo realiza tantas veces como elementos tenga en el arreglo.

Dim x as Integer, y as Integer
Dim numeros() as Integer = {5, 25, 50, 80, 0, 20}
Dim temp as Integer

for x = 0 to 5
console.WriteLine ("{0}",numeros(x))
Next
'imprimimos en pantalla el contenido completo del arreglo

for x= 0 to 5
for y = x + 1 to 5

if numeros (x) > numeros(y) Then
temp = numeros (x)
numeros(x) = numeros(y)
numeros(y) = temp
End If
Next
Next

for x = 0 to 5
console.WriteLine ("{0}",numeros(x))
Next
'imprimimos en pantalla el contenido completo del arreglo ya ordenado

Ejercicio:
Ordenar (del programa de alumnos) los alumnos dados de alta (ver imagen)
Nota:
1.- Tomar en cuenta que las calificaciones tambien deben de coincidir con las de los alumnos.
2.- Utilizar una funcion que recibira parametros (los arreglos) la funcion hace el ordenamiento.

Solución:

Function Ordenar(ByRef Alumnos, ByRef Calif, ByVal y)
Dim pos As Integer, x As Integer, z As Integer
Dim Temp As String
Dim Temp2 As Integer

Console.WriteLine("Ordenacion Metodo de la Burbuja ")
For pos = 0 To y
For x = pos + 1 To y
If StrComp(Alumnos(pos), Alumnos(x)) = 1 Then
Temp = Alumnos(pos)
Alumnos(pos) = Alumnos(x)
Alumnos(x) = Temp

For z = 0 To 4
Temp2 = Calif(pos, z)
Calif(pos, z) = Calif(x, z)
Calif(x, z) = Temp2
Next


End If
Next
Next

End Function