SlideShare une entreprise Scribd logo
1  sur  10
__________________________________________________________
__________________________________________________________
program MatrizGaussJordan;
uses crt;
var
mat:array[1..20,1..10]of real;
var
resmenu:char;
coef,aux:real;
i,j,v,n,m:integer;
fil,posf,col,posc,cant,opc:integer;
//Procedimiento: Portada.
procedure portada;
begin
textbackground(red);
textcolor (white);
clrscr;
gotoxy(20,2);
write('SOLUCION DE MATRICES - METODO GAUSS JORDAN');
gotoxy(25,6);
write('MAIRA JAMBLEIDY PORRAS GARZON');
gotoxy(25,7);
write('JONATHAN YESID VELANDIA FRAILE');
gotoxy(36,8);
write('Alumnos:');
gotoxy(22,13);
write('AGUSTIN DE JESUS VILLALOBOS FLORIAN');
gotoxy(35,14);
write('Ingeniero:');
gotoxy(17,20);
write('FUNDACION UNIVERSITARIA DE SAN GIL - UNISANGIL');
gotoxy(29,21);
write('INGENIERIA DE SISTEMAS');
gotoxy(30,22);
write('ESTRUCTURA DE DATOS');
gotoxy(34,23);
write('CHIQUINQUIRA');
gotoxy(38,24);
write('2013');
readkey;
end;
//Procedimiento: Introduccion.
procedure introduccion;
begin
gotoxy(20,2);
write('SOLUCION DE MATRICES - METODO GAUSS JORDAN');
gotoxy(4,5);
write('La solucion de sistemas de ecuaciones lineales encuentra una amplia');
gotoxy(4,6);
write('aplicacion en la CIENCIA y la TECNOLOGIA. Se puede afirmar, que
en');
gotoxy(4,7);
write('cualquier rama de la Ingenieria existe al menos una aplicacion la');
gotoxy(4,8);
write('cual requiera el planteamineto y solucion de tales sistemas.');
gotoxy(4,10);
write('Por ello profundizamos en el tema y realizamos el presente
programa');
gotoxy(4,11);
write('para facilitar su solucion y corrobar respuestas obtenidas cuando
se');
gotoxy(4,12);
write('hace de forma manual.');
gotoxy(44,24);
textcolor(2);
write('Presione una tecla para continuar...');
readkey;
end;
//Procedimiento: Definicion.
procedure definicion;
begin
gotoxy(20,2);
write('SOLUCION DE MATRICES - METODO GAUSS JORDAN');
gotoxy(4,5);
write('Sistema de ecuaciones lineales de m ecuaciones con n incognitas.');
gotoxy(4,7);
write('a11 a12 ... a1n b1');
gotoxy(4,8);
write('a21 a22 ... a2n b2');
gotoxy(5,9);
write('. . . .');
gotoxy(5,10);
write('. . . .');
gotoxy(5,11);
write('. . . .');
gotoxy(4,12);
write('am1 am2 ... amn bm');
gotoxy(4,14);
write('Este metodo permite determinar la solucion de un sistema de
ecuaciones');
gotoxy(4,15);
write('lineales, encontrar matrices y su inversa; reducciendo el sistema
dado');
gotoxy(4,16);
write('a otro equivalente en el cual cada ecuacion tiene una incognita
menos');
gotoxy(4,17);
write('que la anterior. Sus creadores fueron:');
gotoxy(3,19);
write('- Carl Friedrinch Gauss.');
gotoxy(3,20);
write('- Wilhelm Jordan.');
gotoxy(44,24);
textcolor(2);
write('Presione una tecla para continuar...');
readkey;
end;
//Procedimiento: Registro de variables.
procedure variables;
begin
gotoxy(3,2);
write('Rango de variables: 2 a 10.');
gotoxy(3,4);
write('Digite el numero de variables: ');
read(v);
while (v<2) or (v>10) do
begin
gotoxy(3,6);
write('Rango de variables no valido...');
gotoxy(3,7);
write('Digite de nuevo el numero de variables: ');
clreol;
readln(v);
end;
fil:=v;
col:=v+1;
clrscr;
end;
//Procedimiento: Marco de la matriz.
procedure marco;
begin
for i:=1 to fil+1 do
begin
posc:=2+col*6;
gotoxy(2,i*2);
for j:=2 to posc do
write('-');
end;
cant:=2+2*fil;
for i:=1 to col+1 do
begin
posc:=-4+i*6;
gotoxy(posc,2);
for j:=2 to cant do
begin
gotoxy(posc,j);
write('|');
end;
end;
end;
//Procedimiento: Captura de datos.
procedure captura;
begin
for i:=1 to fil do
begin
posf:=1+(i*2);
for j:=1 to col do
begin
posc:=(j*6)-3;
gotoxy(posc,posf);
read(mat[i,j]);
end;
end;
end;
//Procedimiento: Solucion de la matriz.
procedure gauss1;
begin
for i:=1 to fil do
begin
coef:=mat[i,i];
for j:=1 to col do
begin
mat[i,j]:=mat[i,j]/coef;
end;
if i=1 then
begin
for m:=2 to fil do
begin
aux:=mat[m,i];
for n:=1 to col do
begin
mat[m,n]:=((-1)*(aux)*mat[i,n]+mat[m,n]);
end;
end;
end;
if i>1 then
begin
for m:=1 to i-1 do
begin
aux:=mat[m,i];
for n:=1 to col do
begin
mat[m,n]:=((-1)*(aux)*mat[i,n]+mat[m,n]);
end;
end;
for m:=i+1 to fil do
begin
aux:=mat[m,i];
for n:=1 to col do
begin
mat[m,n]:=((-1)*(aux)*mat[i,n]+mat[m,n]);
end;
end;
end;
end;
end;
//Procedimiento: Resultados.
procedure resultados;
begin
for i:=1 to fil do
begin
posf:=1+(i*2);
for j:=1 to col do
begin
posc:=(j*6)-3;
gotoxy(posc,posf);
write(mat[i,j]:0:1);
end;
end;
end;
//Procedimiento:Fin Resultados.
procedure fin;
begin
gotoxy(3,2);
write('Que tenga un excelente dia.');
gotoxy(3,3);
write('Gracias por utilizar nuestro programa.');
gotoxy(43,24);
textcolor(2);
write('Presione una tecla para continuar...');
readkey;
end;
//Procedimiento: Salida.
procedure salir;
begin
gotoxy(3,2);
write('Que tenga un excelente dia.');
gotoxy(3,3);
write('Gracias por utilizar nuestro programa.');
gotoxy(43,24);
textcolor(2);
write('Presione una tecla para continuar...');
readkey;
end;
//Programa Principal..
begin
portada;
clrscr;
resmenu:='s';
while (resmenu='s') or (resmenu='S') do
begin
clrscr;
begin
gotoxy(20,2);
write('SOLUCION DE MATRICES - METODO GAUSS JORDAN');
gotoxy(14,5);
write('1. Introduccion.');
gotoxy(14,6);
write('2. Definicion.');
gotoxy(14,7);
write('3. Solucion de ejercicios.');
gotoxy(14,8);
write('4. Salir.');
gotoxy(14,10);
write('Digite la opcion que desea: ');
readln(opc);
while (opc<1) or (opc>4) do
begin
gotoxy(14,12);
write('Opcion incorrecta...');
gotoxy(14,13);
write('Digite de nuevo su opcion: ');
clreol;
readln(opc);
end;
clrscr;
case opc of
1:
begin
introduccion;
end;
2:
begin
definicion;
end;
3:
begin
variables;
clrscr;
marco;
captura;
gauss1;
resultados;
readkey;
clrscr;
fin;
end;
4:
begin
salir;
exit;
end;
end;
end;
clrscr;
textcolor(white);
gotoxy(3,2);
write('Desea volver al menu???');
gotoxy(3,3);
write('s/n: ');
readln(resmenu);
clrscr;
if resmenu='n' then
begin
gotoxy(3,2);
write('Que tenga un excelente dia.');
gotoxy(3,3);
write('Gracias por utilizar nuestro programa.');
gotoxy(43,24);
textcolor(2);
write('Presione una tecla para continuar...');
readkey;
end;
end;
end.
__________________________________________________________
__________________________________________________________

Contenu connexe

Similaire à MatrizGaussJordan (20)

Program colegio
Program colegioProgram colegio
Program colegio
 
PILAS Y PUNTEROS
PILAS Y PUNTEROSPILAS Y PUNTEROS
PILAS Y PUNTEROS
 
ARCHIVOS
ARCHIVOSARCHIVOS
ARCHIVOS
 
MENÚ CASE
MENÚ CASEMENÚ CASE
MENÚ CASE
 
ejercicios-pascal
ejercicios-pascalejercicios-pascal
ejercicios-pascal
 
MODELO PASO DE MENSAJES
MODELO PASO DE MENSAJESMODELO PASO DE MENSAJES
MODELO PASO DE MENSAJES
 
Ejercicios resueltos pascal
Ejercicios resueltos pascalEjercicios resueltos pascal
Ejercicios resueltos pascal
 
Java script
Java scriptJava script
Java script
 
Matrices
MatricesMatrices
Matrices
 
Manual
ManualManual
Manual
 
Manual de practicas de open gl con dev c
Manual de practicas de open gl con dev cManual de practicas de open gl con dev c
Manual de practicas de open gl con dev c
 
Practicas de programacion 11 20
Practicas de programacion 11 20Practicas de programacion 11 20
Practicas de programacion 11 20
 
ESTRUCTURAS ARRAYS Y DATOS C++
ESTRUCTURAS ARRAYS Y DATOS C++ESTRUCTURAS ARRAYS Y DATOS C++
ESTRUCTURAS ARRAYS Y DATOS C++
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Programacion en pascal
Programacion en pascalProgramacion en pascal
Programacion en pascal
 
Manual de practicas de open gl con dev c
Manual de practicas de open gl con dev cManual de practicas de open gl con dev c
Manual de practicas de open gl con dev c
 
Manual de practicas de open gl con dev c
Manual de practicas de open gl con dev cManual de practicas de open gl con dev c
Manual de practicas de open gl con dev c
 
Manual de practicas de open gl con dev c
Manual de practicas de open gl con dev cManual de practicas de open gl con dev c
Manual de practicas de open gl con dev c
 
Manual de practicas de open gl con dev c
Manual de practicas de open gl con dev cManual de practicas de open gl con dev c
Manual de practicas de open gl con dev c
 
Programación Calculadora C++
Programación Calculadora C++ Programación Calculadora C++
Programación Calculadora C++
 

Plus de UNISANGIL - Chiquinquirá (13)

Sistemas de numeración (conversiones)
Sistemas de numeración (conversiones)Sistemas de numeración (conversiones)
Sistemas de numeración (conversiones)
 
Conversiones
ConversionesConversiones
Conversiones
 
DATOS PERSONALES
DATOS PERSONALESDATOS PERSONALES
DATOS PERSONALES
 
PUNTEROS
PUNTEROSPUNTEROS
PUNTEROS
 
VECTOR ASCENDENTE
VECTOR ASCENDENTEVECTOR ASCENDENTE
VECTOR ASCENDENTE
 
VECTORES
VECTORESVECTORES
VECTORES
 
LISTADO CÓDIGOS (LAZARUS).
LISTADO CÓDIGOS (LAZARUS).LISTADO CÓDIGOS (LAZARUS).
LISTADO CÓDIGOS (LAZARUS).
 
PILAS
PILASPILAS
PILAS
 
GRAFOS
GRAFOSGRAFOS
GRAFOS
 
LISTAS
LISTASLISTAS
LISTAS
 
COLAS
COLASCOLAS
COLAS
 
ARCHIVOS Y REGISTROS
ARCHIVOS Y REGISTROSARCHIVOS Y REGISTROS
ARCHIVOS Y REGISTROS
 
ARBOLES BINARIOS
ARBOLES BINARIOSARBOLES BINARIOS
ARBOLES BINARIOS
 

MatrizGaussJordan

  • 1. __________________________________________________________ __________________________________________________________ program MatrizGaussJordan; uses crt; var mat:array[1..20,1..10]of real; var resmenu:char; coef,aux:real; i,j,v,n,m:integer; fil,posf,col,posc,cant,opc:integer; //Procedimiento: Portada. procedure portada; begin textbackground(red); textcolor (white); clrscr; gotoxy(20,2); write('SOLUCION DE MATRICES - METODO GAUSS JORDAN'); gotoxy(25,6); write('MAIRA JAMBLEIDY PORRAS GARZON'); gotoxy(25,7); write('JONATHAN YESID VELANDIA FRAILE'); gotoxy(36,8); write('Alumnos:'); gotoxy(22,13); write('AGUSTIN DE JESUS VILLALOBOS FLORIAN'); gotoxy(35,14); write('Ingeniero:'); gotoxy(17,20); write('FUNDACION UNIVERSITARIA DE SAN GIL - UNISANGIL'); gotoxy(29,21); write('INGENIERIA DE SISTEMAS'); gotoxy(30,22);
  • 2. write('ESTRUCTURA DE DATOS'); gotoxy(34,23); write('CHIQUINQUIRA'); gotoxy(38,24); write('2013'); readkey; end; //Procedimiento: Introduccion. procedure introduccion; begin gotoxy(20,2); write('SOLUCION DE MATRICES - METODO GAUSS JORDAN'); gotoxy(4,5); write('La solucion de sistemas de ecuaciones lineales encuentra una amplia'); gotoxy(4,6); write('aplicacion en la CIENCIA y la TECNOLOGIA. Se puede afirmar, que en'); gotoxy(4,7); write('cualquier rama de la Ingenieria existe al menos una aplicacion la'); gotoxy(4,8); write('cual requiera el planteamineto y solucion de tales sistemas.'); gotoxy(4,10); write('Por ello profundizamos en el tema y realizamos el presente programa'); gotoxy(4,11); write('para facilitar su solucion y corrobar respuestas obtenidas cuando se'); gotoxy(4,12); write('hace de forma manual.'); gotoxy(44,24); textcolor(2); write('Presione una tecla para continuar...'); readkey; end;
  • 3. //Procedimiento: Definicion. procedure definicion; begin gotoxy(20,2); write('SOLUCION DE MATRICES - METODO GAUSS JORDAN'); gotoxy(4,5); write('Sistema de ecuaciones lineales de m ecuaciones con n incognitas.'); gotoxy(4,7); write('a11 a12 ... a1n b1'); gotoxy(4,8); write('a21 a22 ... a2n b2'); gotoxy(5,9); write('. . . .'); gotoxy(5,10); write('. . . .'); gotoxy(5,11); write('. . . .'); gotoxy(4,12); write('am1 am2 ... amn bm'); gotoxy(4,14); write('Este metodo permite determinar la solucion de un sistema de ecuaciones'); gotoxy(4,15); write('lineales, encontrar matrices y su inversa; reducciendo el sistema dado'); gotoxy(4,16); write('a otro equivalente en el cual cada ecuacion tiene una incognita menos'); gotoxy(4,17); write('que la anterior. Sus creadores fueron:'); gotoxy(3,19); write('- Carl Friedrinch Gauss.'); gotoxy(3,20); write('- Wilhelm Jordan.'); gotoxy(44,24); textcolor(2); write('Presione una tecla para continuar...'); readkey;
  • 4. end; //Procedimiento: Registro de variables. procedure variables; begin gotoxy(3,2); write('Rango de variables: 2 a 10.'); gotoxy(3,4); write('Digite el numero de variables: '); read(v); while (v<2) or (v>10) do begin gotoxy(3,6); write('Rango de variables no valido...'); gotoxy(3,7); write('Digite de nuevo el numero de variables: '); clreol; readln(v); end; fil:=v; col:=v+1; clrscr; end; //Procedimiento: Marco de la matriz. procedure marco; begin for i:=1 to fil+1 do begin posc:=2+col*6; gotoxy(2,i*2); for j:=2 to posc do write('-'); end; cant:=2+2*fil; for i:=1 to col+1 do begin
  • 5. posc:=-4+i*6; gotoxy(posc,2); for j:=2 to cant do begin gotoxy(posc,j); write('|'); end; end; end; //Procedimiento: Captura de datos. procedure captura; begin for i:=1 to fil do begin posf:=1+(i*2); for j:=1 to col do begin posc:=(j*6)-3; gotoxy(posc,posf); read(mat[i,j]); end; end; end; //Procedimiento: Solucion de la matriz. procedure gauss1; begin for i:=1 to fil do begin coef:=mat[i,i]; for j:=1 to col do begin mat[i,j]:=mat[i,j]/coef; end; if i=1 then begin
  • 6. for m:=2 to fil do begin aux:=mat[m,i]; for n:=1 to col do begin mat[m,n]:=((-1)*(aux)*mat[i,n]+mat[m,n]); end; end; end; if i>1 then begin for m:=1 to i-1 do begin aux:=mat[m,i]; for n:=1 to col do begin mat[m,n]:=((-1)*(aux)*mat[i,n]+mat[m,n]); end; end; for m:=i+1 to fil do begin aux:=mat[m,i]; for n:=1 to col do begin mat[m,n]:=((-1)*(aux)*mat[i,n]+mat[m,n]); end; end; end; end; end; //Procedimiento: Resultados. procedure resultados; begin for i:=1 to fil do begin
  • 7. posf:=1+(i*2); for j:=1 to col do begin posc:=(j*6)-3; gotoxy(posc,posf); write(mat[i,j]:0:1); end; end; end; //Procedimiento:Fin Resultados. procedure fin; begin gotoxy(3,2); write('Que tenga un excelente dia.'); gotoxy(3,3); write('Gracias por utilizar nuestro programa.'); gotoxy(43,24); textcolor(2); write('Presione una tecla para continuar...'); readkey; end; //Procedimiento: Salida. procedure salir; begin gotoxy(3,2); write('Que tenga un excelente dia.'); gotoxy(3,3); write('Gracias por utilizar nuestro programa.'); gotoxy(43,24); textcolor(2); write('Presione una tecla para continuar...'); readkey; end;
  • 8. //Programa Principal.. begin portada; clrscr; resmenu:='s'; while (resmenu='s') or (resmenu='S') do begin clrscr; begin gotoxy(20,2); write('SOLUCION DE MATRICES - METODO GAUSS JORDAN'); gotoxy(14,5); write('1. Introduccion.'); gotoxy(14,6); write('2. Definicion.'); gotoxy(14,7); write('3. Solucion de ejercicios.'); gotoxy(14,8); write('4. Salir.'); gotoxy(14,10); write('Digite la opcion que desea: '); readln(opc); while (opc<1) or (opc>4) do begin gotoxy(14,12); write('Opcion incorrecta...'); gotoxy(14,13); write('Digite de nuevo su opcion: '); clreol; readln(opc); end; clrscr; case opc of 1: begin
  • 10. write('Que tenga un excelente dia.'); gotoxy(3,3); write('Gracias por utilizar nuestro programa.'); gotoxy(43,24); textcolor(2); write('Presione una tecla para continuar...'); readkey; end; end; end. __________________________________________________________ __________________________________________________________