Ordenar una matriz
Publicado por Hipromark (2 intervenciones) el 20/06/2016 05:11:13
Saludos compañeros. Estoy tratando de ordenar una matriz de mayor a menor, logro crear la matriz y en una parte del código trato de oredenarla de mayor a menor utilizando como base un código que funciona para arrays de una dimensión, pero en la matriz no logro hacer que me funcione ni de mayor a menor ni al contrario tampoco. Agradezco cualquier ayuda, Adjunto el código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Sub matriz_ordenada()
Dim numElementos As Integer
Dim valor, valor2 As Integer
Dim i, j, k, h As Integer
Dim Mat(2, 3) As Integer
Dim container As Integer
'container es un auxiliar para guardar algunos resultados
For i = 1 To 2
valor = InputBox("ingrese un número entero")
j = 1
Mat(i, j) = valor
For j = (j + 1) To 3
valor2 = InputBox("ingrese un número entero")
Mat(i, j) = valor2
Next j
Next i
'Aquí viene el código que debería ordenar la matriz, pero no me funciona
For i = 1 To 2
For k = (i + 1) To 2
j = 1
If Mat(i, j) > Mat(k, j) Then
container = Mat(i, j)
Mat(i, j) = Mat(k, j)
Mat(k, j) = container
End If
For j = (j + 1) To 3
h = i + 1
If Mat(i, j) > Mat(h, j) Then
container = Mat(i, j)
Mat(i, j) = Mat(h, j)
Mat(h, j) = container
End If
Next j
Next k
Next i
'Aquí imprimo la matriz pero no me la trae en el orden que quiero
For i = 1 To 2
j = 1
Debug.Print Mat(i, j) & ", "
For j = (j + 1) To 3
Debug.Print Mat(i, j) & ", "
Next j
Next i
End Sub
Valora esta pregunta


0