1. Dim fila1 As Integer, columna1 As Integer
Dim fila2 As Integer, columna2 As Integer
Dim fila3 As Integer, columna3 As Integer
Dim f1 As Object, f2 As Object, c1 As Object,
c2 As Object
Dim matriz1(,) As Single
Dim matriz2(,) As Single
Dim matriz3(,) As Single
Dim c_num As Object
Dim c_num1 As Object
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
End Sub
Private Sub matriz1_Click(sender As Object, e As EventArgs) Handles
matriz1.Click
MsgBox("Vamos a dimensionar la matriz 1", vbInformation)
For i = 1 To 1
f1 = InputBox("cantidad de Filas de la primera Matriz", "matriz1")
If f1 <= 0 Then
MsgBox("valor incorrecto. Ingrese otro numero", vbCritical)
i = i - 1
Else
fila1 = f1
End If
Else
MsgBox("ingrese un valor numérico", vbCritical, "error")
i = i - 1
End If
Next
dgvmatriz1.RowCount = fila1
dgvmatriz1.AutoResizeRows()
For i = 1 To 1
c1 = InputBox("cantidad de columnas de la primera matrix¿z", "matriz1")
If IsNumeric(c1) Then
MsgBox("valor incorrecto.ingrese otro numero", vbCritical)
i = i - 1
Else
Columna1 = C1
End If
Else
MsgBox("ingrese un valor numérico", vbCritical, "error")
i = i - 1
End if
Next
dgvmatriz1.ColumnCount = columna1
dgvmatriz1.AutoResizeColumns()
ReDim matriz1(fila1 - 1, columna1 - 1)
MsgBox("favor ingrese los valores de la MATRIZ 1", vbInformation)
For j = 0 To cloumna1 - 1
For i = 0 To fila1 - 1
C_num1 = InputBox("favor ingrese el elemento(" & Sts(i) & "," &
Str(j) & ")" & vbCrLf, "llena la matriz1")
If IsNumeric(c_mun1) Then
2. matriz1(i, j) = c_num1
dgvmatriz1(j, i).value = matriz1(i, j)
Else
i = i - 1
MsgBox("inserte un numero valido", vbCritical, "error")
End If
Next
Next
End Sub
End Sub
Private Sub rbsuma_CheckedChanged(sender As Object, e As EventArgs) Handles
rbsuma.CheckedChanged
if columna1 = columna2 And fila1 = fila2 Then
Columna3 = columna1
Fila3 = fila1
ReDim matriz3 (fila3 – 1, columna3 – 1)
dgvmatriz3.RowCount = fila3
dgvmatriz3.ColumnCount = columna3
For i = 0 To fila3 – 1
For j = 0 To columna3 – 1
Matriz3(i, j) = matriz1(i, j) + matriz2(i, j)
Dgv matriz3(j, i).Value = matriz3(i, j)
Next
Next
dvgmatriz3.AutoResizeColumns()
dgvmatriz3.AutoResizeRows()
Else
MsgBox("La suma no se puede realizar por la dimensiones de las matrices")
Label 13.Text = "La suma no es posible"
rbsuma.Checked = False
Exit Sub
End If
rbsuma.Checked = False
Label13.Text = "Respuesta de la suma"
End Sub
End Sub
Private Sub rbresta_CheckedChanged(sender As Object, e As EventArgs) Handles
rbresta.CheckedChanged
f columna1 = columna2 And fila1 = fila2 Then
columna3 = columna1
fila3 = fila1
ReDim matriz3(fila - 1, columna3 - 1)
dgvmatriz3.RowCount = fila3
For i = 0 To fila3 – 1
For j = 0 To columna3 – 1
Matriz3(i, j) = matriz1(i, j) + matriz2(i, j)
dgvmatriz3(j, i).Value = matriz3(i, j)
Next
Next
dvgmatriz3.AutoResizeColumns()
dgvmatriz3.AutoResizeRows()
Else
MsgBox("La resta no se puede realizar por las dimensiones de las matrices")
3. Label3.Text = "La Resta no es posible"
rbresta.Checked = False
Exit Sub
End If
rbresta.Checked = False
Label3.Text = "Respuesta de la resta"
End Sub
End Sub
Private Sub rbmultiplicación_CheckedChanged(sender As Object, e As EventArgs)
Handles rbmultiplicación.CheckedChanged
If columna1 = fila2 Then
columna3 = columna1
fila3 = fila1
ReDim matriz3(fila - 1, columna3 - 1)
dgvmatriz3.RowCount = fila3
For i = 0 To fila1 - 1
For j = 0 To columna2 - 1
For k = 0 To fila2 - 1
matriz3(i, j) = matriz3 (i, j) + (matriz1(i,k) * matriz2(k,
j)
dgvmatriz3(i, j).Value = matriz3(i, j)
Next
Next
Next
dvgmatriz3.AutoResizeColumns()
dgvmatriz3.AutoResizeRows()
Else
MsgBox("La multiplicación no se puede realizar por las dimensiones de
las matrices")
Label3.Text = "La multiplicación no es posible"
rbmultiplicacion.Checked = False
End If
rbmultiplicacion.Checked = False
Label3.Text = "La respuesta de la multiplicación"
End Sub
End Sub
Private Sub matriz2_Click(sender As Object, e As EventArgs) Handles
matriz2.Click
MsgBox("vamos a simensionar la matriz2".vbInformation)
For i = 1 To 1
f1= inputbox(“cantidad de Filas de la primera Matriz”, matriz 2”)
If f1 <= 0 Then
MsgBox("valor incorrecto. Ingrese otro numero", vbCritical)
i = i - 1
Else
fila1 = f1
End If
Else
MsgBox("ingreseun valor numérico", vbCritical, "error")
i = i - 1
End If
Next
dgvmatriz2.RowCount = fila1
dgvmatriz2.AutoResizeRows()
4. For i = 1 To 1
c1 = InputBox("cantidad de columnas de la primera matrix¿z", "matriz2")
If IsNumeric(c1) Then
MsgBox("valor incorrecto.ingreseotro numero", vbCritical)
i = i - 1
Else
Columna1 = C1
End If
Else
MsgBox("ingrese un valor numérico", vbCritical, "error")
i = i - 1
End if
Next
dgvmatriz2.ColumnCount = columna1
Dgavmatriz2.AutoResizeColumns()
ReDim matriz1(fila1 - 1, columna1 - 1)
MsgBox("favor ingrese los valores de la MATRIZ 2", vbInformation)
For j = 0 To cloumna1 - 1
For i = 0 To fila1 - 1
C_num1 = InputBox("favor ingrese el elemento(" & Sts(i) & "," &
Str(j) & ")" & vbCrLf, "llena la matriz1")
If IsNumeric(c_mun1) Then
matriz1(i, j) = c_num1
dgvmatriz1(j, i).value = matriz1(i, j)
Else
i = i - 1
MsgBox("inserte un numero valido", vbCritical, "error")
End If
Next
Next
End Sub
Private Sub salir_Click(sender As Object, e As EventArgs) Handles salir.Click
MsgBox(" hasta pronto")
Me.Close()
End Sub
Private Sub limpiar_Click(sender As Object, e As EventArgs) Handles
limpiar.Click
If (MsgBox("¿desea reiniciar los valores?", MsgBoxStyle.YesNo) =
MsgBoxResult.Yes) Then button3.focus()
dgvmatriz1.Rows.Clear()
dgvmatriz2(Rows.Clear())
dgvmatriz3.DataSource = Nothing
Exit Sub
End If
End Sub
End Class