Plantee e implemente un programa en PASCAL que permita introducir apropiadamente una matriz 3x3 de números enteros y que muestre por pantalla en formato matricial tanto la matriz original introducida como su matriz traspuesta. Calcule y muestre además el determinante de ambas matrices.
PROGRAM matrices(input,output);
CONST
limitefilas = 3;
limitecolumnas = 3;
TYPE
Tabla = ARRAY[1..limitefilas, 1..limitecolumnas] OF integer;
VAR
matriz:Tabla;
mtraspuesta:Tabla;
fila,columna:integer;
a:integer;
(*******************************************************************************)
PROCEDURE leer;
VAR
I,L,numero:integer;
BEGIN
fila:=3;
columna:=3;
FOR I:=1 TO fila DO
BEGIN
FOR L:=1 TO columna DO
BEGIN
write('Escriba el numero del elemento fila: ',I:2,' columna: ',L:2,' :');
read(numero);
matriz[I,L]:= numero;
END;
END;
END;
(*******************************************************************************)
PROCEDURE Imprimir_Matriz;
VAR
I,L: integer;
BEGIN
FOR I:=1 TO fila DO
BEGIN
writeln;
FOR L:=1 TO columna DO
BEGIN
write(matriz[I,L]:8);
write(' ');
END;
END;
writeln;
END;
(*******************************************************************************)
PROCEDURE traspuesta;
VAR
I,L:integer;
BEGIN
fila:=3;
columna:=3;
FOR I:=1 TO fila DO
BEGIN
FOR L:=1 TO columna DO
BEGIN
mtraspuesta[I,L]:=matriz[L,I];
END;
END;
END;
(*******************************************************************************)
PROCEDURE Imprimir_Matrizt;
VAR
I,L: integer;
BEGIN
FOR I:=1 TO fila DO
BEGIN
writeln;
FOR L:=1 TO columna DO
BEGIN
write(mtraspuesta[I,L]:8);
write(' ');
END;
END;
writeln;
END;
(*******************************************************************************)
PROCEDURE determinantem;
VAR
determinante:integer;
BEGIN
determinante:= ((matriz[1,1]*matriz[2,2]*matriz[3,3])+(matriz[1,2]*matriz[2,3]*matriz[3,1]))-((matriz[1,3]*matriz[2,2]*matriz[3,1])+(matriz[1,2]*matriz[2,1]*matriz[3,3]));
writeln('El determinante de la matriz es: ',determinante);
END;
(*******************************************************************************)
BEGIN
leer;
Imprimir_Matriz;
traspuesta;
Imprimir_Matrizt;
determinantem;
read(a);
END.
Ejemplo de ejecución
Suscribirse a:
Enviar comentarios (Atom)
La formula del determinante esta mal!
ResponderEliminar