Pseudocódigo vacio principal { entero A[m][n]; entero B[p][q]; entero opcion; inicializa(A,m,n); inicializa(B,p,q); hacer { menu(opcion); según (opcion) { 1 : capturar(A,m,n); 2 : capturar(B,p,q); 3 : sumaMatriz(A,B,m,n,p,q); 4 : multiplicaMatriz(A,B,m,n,p,q); 5 : transpuesta(A,m,n); 6 : transpuesta(B,p,q); } } mientras !(opcion==7) } //------------------------------vacio menu(entero opcion) { limpia(); irxy(10,10); escribir(“[1] Captura matriz A”); irxy(10,11); escribir(“[2] Captura matriz B”); irxy(10,12); escribir(“[3] Suma (A+B)”); irxy(10,13); escribir(“[4] Multiplicación (AB)”); irxy(10,14); escribir(“[5] Transpuesta A”); irxy(10,15); escribir(“[6] Transpuesta B”); irxy(10,16); escribir(“[7] Salir”); irxy(10,18); escribir(“OPCION: ”); pedir(opcion); } //------------------------------vacio inicializa(entero[][] M, entero r, entero c) { para(entero i=0; i<r; i++) { para(entero j=0; j<c; j++) { M[i][j] = 0; } } } //------------------------------vacio captura (entero[][] M, entero r, entero c){ para(entero i=0; i<r; i++) { para(entero j=0; j<c; j++) { limpiar(); irxy(10,10); escribir(“Elemento en la posición [”, i, “] [”, j, “] : ”); pedir(M[i][j]); } } } //------------------------------vacio sumaMatriz(entero[][] A,entero rA, entero cA, entero[][] B, entero rB, entero cB) { limpiar(); si (rA==rB && cA==cB) { para(entero i=0; i<rA; i++) { para(entero j=0; j<cA; j++) { irxy(10+i,10+j*4); escribir(A[i][j]+B[i][j]); } } sino { irxy(10,10); escribir(“ERROR: matrices no son del mismo tamaño”); } } //------------------------------vacio multiplicaMatriz(entero[][] A,entero rA, entero cA, entero[][] B, entero rB, entero cB) { entero aux; limpiar(); si (cA==rB) { para(entero i=0; i<rA; i++) { para(entero j=0; j<cB; j++) { aux = 0; para(entero k=0; i<rB; k++) { aux = aux + A[i][k]*B[k][j]; } irxy(10+i,10+j*4); escribir(aux); } } sino { irxy(10,10); escribir(“ERROR: matrices no se pueden multiplicar”); } } //------------------------------vacio transpuesta(entero[][] M, entero r, entero c) { limpiar(); para(entero i=0; i<r; i++) { para(entero j=0; j<c; j++) { irxy(10+i,10+j*4); escribir(M[i][j]); } } } //-------------------------------