codigo en java

3
UNIVERSIDAD INDUSTRIAL DE SANTANDER FACULTAD DE INGENIERÍAS FÍSICO-QUÍMICAS ESCUELA DE INGENIERÍA DE PETRÓLEOS Métodos Numéricos ANEXOS 1 CODIGO DEL METODO EN JAVA package gauss; import javax.swing.JOptionPane; public class gauss { public static void main(String[] args) { JOptionPane.showMessageDialog(null,"SOLUCION DE ECUACIONES LINEALES POR EL METODO DE GAUSS"); int i,j,s,k,h,n; double d; double m[][]; double r[]; double x[]; //Recuerde que el numero de incognitas y de ecuaciones deben ser iguales n=Integer.parseInt(JOptionPane.showInputDialog("ingrese el numero de incognitas")); m= new double [n][n]; r= new double [n]; x= new double [n]; //RECUERDE QUE LA DIAGONAL PRINCIPAL DE LA MATRIZ DE COEFICIENTES NO PUEDE TENER CEROS for(i=0;i<=n-1;i++){ k=i+1; r[i]=Double.parseDouble(JOptionPane.showInputDialog("ingrese el elemento "+k+" del vector de soluciones"));

Upload: vimaba

Post on 10-Apr-2015

2.002 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Codigo en Java

UNIVERSIDAD INDUSTRIAL DE SANTANDER

FACULTAD DE INGENIERÍAS FÍSICO-QUÍMICAS

ESCUELA DE INGENIERÍA DE PETRÓLEOS

Métodos Numéricos

ANEXOS 1

CODIGO DEL METODO EN JAVA

package gauss;

import javax.swing.JOptionPane;

public class gauss {

public static void main(String[] args) {

JOptionPane.showMessageDialog(null,"SOLUCION DE ECUACIONES LINEALES POR EL METODO DE GAUSS");

int i,j,s,k,h,n;

double d;

double m[][];

double r[];

double x[];

//Recuerde que el numero de incognitas y de ecuaciones deben ser iguales

n=Integer.parseInt(JOptionPane.showInputDialog("ingrese el numero de incognitas"));

m= new double [n][n];

r= new double [n];

x= new double [n];

//RECUERDE QUE LA DIAGONAL PRINCIPAL DE LA MATRIZ DE COEFICIENTES NO PUEDE TENER CEROS

for(i=0;i<=n-1;i++){

k=i+1;

r[i]=Double.parseDouble(JOptionPane.showInputDialog("ingrese el elemento "+k+" del vector de soluciones"));

x[i]=0;

for(j=0;j<=n-1;j++){

h=j+1;

Page 2: Codigo en Java

UNIVERSIDAD INDUSTRIAL DE SANTANDER

FACULTAD DE INGENIERÍAS FÍSICO-QUÍMICAS

ESCUELA DE INGENIERÍA DE PETRÓLEOS

Métodos Numéricos

m[i][j]=Double.parseDouble(JOptionPane.showInputDialog("ingrese el elemento "+k+h+" de la matriz de coeficientes"));

}

}

//Este ciclo convierte la triangular inferior en ceros

for(i=0;i<n;i++){

for(j=i;j<n;j++){

if(i==j){

d=m[i][j];

for(s=0;s<n;s++){

m[i][s]=((m[i][s])/d);

}

r[i]=((r[i])/d);

}

else{

d=m[j][i];

for(s=0;s<n;s++){

m[j][s]=m[j][s]-(d*m[i][s]);

}

r[j]=r[j]-(d*r[i]);

}

}

}

//A continuacion se calcula el valor de las ingognitas

for(i=n-1;i>=0;i--){

double y=r[i];

Page 3: Codigo en Java

UNIVERSIDAD INDUSTRIAL DE SANTANDER

FACULTAD DE INGENIERÍAS FÍSICO-QUÍMICAS

ESCUELA DE INGENIERÍA DE PETRÓLEOS

Métodos Numéricos

for(j=n-1;j>=i;j--){

y=y-x[j]*m[i][j];

}

x[i]=y;

}

for(i=0;i<n;i++){

k=i+1;

JOptionPane.showMessageDialog(null,"el valor de la incognita x"+k+" es "+x[i]);

}

}

}