• Jueves 7 de Noviembre de 2024, 23:50

Autor Tema:  Operaciones de Matrices  (Leído 7029 veces)

RyuYadi

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Operaciones de Matrices
« en: Domingo 14 de Junio de 2009, 22:35 »
0
Hola, no hace mucho que me introduje en este lenguaje, y he programado unas cuantas cosas, pero ahora llegue al tema de matrices y estoy teniendo dificultades XD, creo que estoy acostumbrada al C++ y quiero hacer cosas similares pero parece que no funciona xDDD

Bueno quiero intentar sumar dos matrices pero al momento de hacerlo no me sale, me sale la matriz que he capturado pero no se suman los valoes que es lo que hago mal?

aqui dejo el codigo y lo que me sale:

codigo:

Sub ProgramaMatrices()

Dim Fil1 As Integer, Col1 As Integer, Fil2 As Integer, Col2 As Integer
Dim matA() As Integer, matB() As Integer, matC() As Integer
Dim i As Integer, j As Integer

Fil1 = InputBox("Numero de Filas de la matriz A: ")
Col1 = InputBox("Numero de Columnas de la matriz A: ")

ReDim matA(Fil1, Col1)

For i = 1 To Fil1
For j = 1 To Col1
        matA(i, j) = InputBox("Introduce un nuemro: ")
    Next
  Next
 
  Fil2 = InputBox("Numero de Filas de la matriz B: ")
Col2 = InputBox("Numero de Columnas de la matriz B: ")

ReDim matB(Fil2, Col2)

For i = 1 To Fil2
For j = 1 To Col2
        matB(i, j) = InputBox("Introduce un nuemro: ")
    Next
  Next

Debug.Print "matriz A "
For i = 1 To Fil1
For j = 1 To Col1
Debug.Print matA(i, j),
 Next
 Debug.Print
Next

Debug.Print "matriz B "
For i = 1 To Fil2
For j = 1 To Col2
Debug.Print matB(i, j),
 Next
 Debug.Print
Next

Dim opc As Integer

Debug.Print ("1.Suma")
Debug.Print ("2.Resta")
Debug.Print ("3.Multiplicacion")
Debug.Print ("4.Salir")
opc = InputBox("Que desea hacer: ")

If opc = 1 Then
    If matA(Fil1, Col1) = matB(Fil2, Col2) Then
    ReDim matC(Fil1, Col1)
    For i = 1 To Fil1
     For j = 1 To Col1
        matC(i, j) = matA(i, j) + matB(i, j)
      Next
    Next
   Else
   MsgBox ("Matriz no definida")
    End If
End If
   
 Debug.Print "matriz C "
For i = 1 To Fil1
For j = 1 To Col2
Debug.Print matB(i, j),
 Next
 Debug.Print
Next


End Sub

Salida:

ProgramaMatrices          
matriz A
 1             2            
 3             4            
matriz B
 1             2            
 3             4            
1.Suma
2.Resta
3.Multiplicacion
4.Salir
matriz C
 1             2            
 3             4
--------------------------------------------------------------------------------------------------------------------------------------

Ya descubri cual fue mi error y fue un error de dedo, estaba imprimiendo la matriz b en vez de la C, ya esta esta solucionado esto, ya pueden borrar este tema. para la otra me fijare mejor, gracias =)  :rolleyes: