SlideShare una empresa de Scribd logo
1 de 4
Método de EliminaciónGaussianacon pivoteoparcial(con punteros y
funciones)parasistemasde necuaciones
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
double **memoriaMatriz(int n, int m)
{
double **pp;
inti;
pp=(double**)calloc(n,sizeof(double*));
if(pp==NULL)
        {
printf("Fallaobtenermemoria");
return NULL;
        }
for(i=0;i<n;i++)
        {
pp[i]=(double*)calloc(m,sizeof(double));
if(pp[i]==NULL)
                        {
printf("Falla al obtenermemoriapara el indice %d",i);
return NULL;
                        }
        }
returnpp;
}

void **leerMatriz(double **mat, int n)
{
inti,j;

for(i=0;i<n;i++)
     {
printf("n");
for(j=0;j<n;j++)
          {
printf("Elemento %d, %d: ",i+1,j+1);
scanf("%lf",&mat[i][j]);
          }
     }
}

voidimprimirMatriz(double **mat,int n)
{
inti,j;
printf("n");
for(i=0;i<n;i++)
      {
for(j=0;j<n;j++)
printf("%lft",mat[i][j]);
printf("n");
     }
}

voidpivoteo (double **a, double *b, int k, int n)
{
int p=0, j, i;
double mayor, temp;
for(k=0;k<(n-1);k++)
      {
mayor = fabs (a[k][k]);
for (i = k+1; i< n; i++)
      {
if (fabs (a[i][k]) > mayor)
          {
                     p = i;
mayor = fabs (a[i][k]);
          }
      }
if (p != k)
      {
printf("Entro al pivoteon");
for (j = 0; j < n; j++)
             {
temp = a[k][j];
a[k][j] = a[p][j];
a[p][j] = temp;

           }
temp = b[k];
b[k] = b[p];
b[p] = temp;



     }
     }
}

voidleeArreglo (double *arr, int n)
{
inti;
for (i = 0; i< n; i++)
      {
printf ("Elemento %d: ",i+1);
scanf ("%lf", (arr+i));
      }
}
voidimprimeArreglo (double *arr, int n)
{
inti;

for (i = 0; i< n; i++)
printf ("x(%d)=%lfn",i+1, *(arr+i));
printf ("n");
}
voideliminacionGaussiana (double **a, double *b,int n)
{
inti,j,k;
doublecte;


for(i=0;i<n;i++) //Reglonpivote
      {
if(i==0)pivoteo(a,b,k,n);
for(j=i+1;j<n;j++) //Eliminación de variables
        {

cte=a[j][i]/a[i][i];
for(k=i;k<n;k++) //Aplica a todo el renglón
              {
a[j][k]=a[j][k]-(cte*a[i][k]);
                  }
b[j]=b[j]-cte*b[i];
        }
        }

}
voidsustitucionHaciaAtras(double **a, double *b,double *x,int n)
{
inti,j;
doublesuma;
for(i=n-1;i>=0;i--)
      {
suma=0.0;
for(j=i+1;j<n;j++)
suma=suma+a[i][j]*x[j];
x[i]=(b[i]-suma)/a[i][i];
        }
}
int main()
{
int n;
double **a,*b,*x;

do
    {
printf("Dame el No. de ecuaciones: ");
scanf("%d",&n);
if(n>1)break;
printf("Minimo 2 ecs.n");
} while(1);
    a=memoriaMatriz(n,n);
    b=(double *) calloc(n,sizeof(double));
    x=(double *)calloc(n,sizeof(double));
printf("Matriz de coeficientesn");
leerMatriz(a,n);
printf("nTerminosindependientesn");
leeArreglo(b,n);
printf("nMatriztrianguladan");
eliminacionGaussiana(a,b,n);
imprimirMatriz(a,n);
sustitucionHaciaAtras(a,b,x,n);
printf("nSolucion:n");
imprimeArreglo(x,n);
system("pause");
}

Más contenido relacionado

La actualidad más candente

Distribución binomial
Distribución binomialDistribución binomial
Distribución binomialWiwi Hdez
 
Ejercicios de Calculo Multivariable
Ejercicios de Calculo MultivariableEjercicios de Calculo Multivariable
Ejercicios de Calculo MultivariableJair Ospino Ardila
 
Distribucion geometrica
Distribucion geometricaDistribucion geometrica
Distribucion geometricajavier
 
Ejercicios resueltos integracion_numerica
Ejercicios resueltos integracion_numericaEjercicios resueltos integracion_numerica
Ejercicios resueltos integracion_numericaHenry Aguilar Fernandez
 
Derivada de funciones trigonometricas
Derivada de funciones trigonometricas Derivada de funciones trigonometricas
Derivada de funciones trigonometricas Jair Ospino Ardila
 
Newton And Neville Interpolation
Newton And Neville InterpolationNewton And Neville Interpolation
Newton And Neville InterpolationCristobal Lopez
 
(Final) cálculo trabajo en equipo
(Final) cálculo   trabajo en equipo(Final) cálculo   trabajo en equipo
(Final) cálculo trabajo en equipoEmanuelMuoz11
 
Distribuciones ejercicios
Distribuciones ejerciciosDistribuciones ejercicios
Distribuciones ejerciciossontorito0o
 
Transformaciones lineales
Transformaciones linealesTransformaciones lineales
Transformaciones linealesCarlos Zambrano
 
Aplicar derivadas en el cálculo de velocidad y aceleración de un objeto que s...
Aplicar derivadas en el cálculo de velocidad y aceleración de un objeto que s...Aplicar derivadas en el cálculo de velocidad y aceleración de un objeto que s...
Aplicar derivadas en el cálculo de velocidad y aceleración de un objeto que s...dinorkis
 
Ejercicios raíces de funciones
Ejercicios raíces de funciones Ejercicios raíces de funciones
Ejercicios raíces de funciones Marco Jiménez
 
Algunas Distribuciones de Probabilidad Discreta
Algunas Distribuciones de Probabilidad DiscretaAlgunas Distribuciones de Probabilidad Discreta
Algunas Distribuciones de Probabilidad Discretajiboy7
 

La actualidad más candente (20)

Ejercicios 5.3
Ejercicios 5.3Ejercicios 5.3
Ejercicios 5.3
 
Distribución binomial
Distribución binomialDistribución binomial
Distribución binomial
 
Distribucion Binomial
Distribucion BinomialDistribucion Binomial
Distribucion Binomial
 
Distribución de bernoulli para combinar
Distribución de bernoulli   para combinarDistribución de bernoulli   para combinar
Distribución de bernoulli para combinar
 
Ejercicios de Calculo Multivariable
Ejercicios de Calculo MultivariableEjercicios de Calculo Multivariable
Ejercicios de Calculo Multivariable
 
Cuaderno 1
Cuaderno 1Cuaderno 1
Cuaderno 1
 
Distribucion geometrica
Distribucion geometricaDistribucion geometrica
Distribucion geometrica
 
Ejercicios resueltos integracion_numerica
Ejercicios resueltos integracion_numericaEjercicios resueltos integracion_numerica
Ejercicios resueltos integracion_numerica
 
Cap 2 Reitz e Milford
Cap 2 Reitz e MilfordCap 2 Reitz e Milford
Cap 2 Reitz e Milford
 
Derivada de funciones trigonometricas
Derivada de funciones trigonometricas Derivada de funciones trigonometricas
Derivada de funciones trigonometricas
 
Newton And Neville Interpolation
Newton And Neville InterpolationNewton And Neville Interpolation
Newton And Neville Interpolation
 
Distribución norma ejercicio
Distribución norma ejercicioDistribución norma ejercicio
Distribución norma ejercicio
 
(Final) cálculo trabajo en equipo
(Final) cálculo   trabajo en equipo(Final) cálculo   trabajo en equipo
(Final) cálculo trabajo en equipo
 
Distribuciones ejercicios
Distribuciones ejerciciosDistribuciones ejercicios
Distribuciones ejercicios
 
Clase02 distribuciones de probabilidad
Clase02   distribuciones de probabilidadClase02   distribuciones de probabilidad
Clase02 distribuciones de probabilidad
 
Transformaciones lineales
Transformaciones linealesTransformaciones lineales
Transformaciones lineales
 
Aplicar derivadas en el cálculo de velocidad y aceleración de un objeto que s...
Aplicar derivadas en el cálculo de velocidad y aceleración de un objeto que s...Aplicar derivadas en el cálculo de velocidad y aceleración de un objeto que s...
Aplicar derivadas en el cálculo de velocidad y aceleración de un objeto que s...
 
Ejercicios raíces de funciones
Ejercicios raíces de funciones Ejercicios raíces de funciones
Ejercicios raíces de funciones
 
Algunas Distribuciones de Probabilidad Discreta
Algunas Distribuciones de Probabilidad DiscretaAlgunas Distribuciones de Probabilidad Discreta
Algunas Distribuciones de Probabilidad Discreta
 
Tema 2 colorprobabilidades
Tema 2 colorprobabilidadesTema 2 colorprobabilidades
Tema 2 colorprobabilidades
 

Destacado

Eliminación de Gauss-Jordan y Inversas
Eliminación de Gauss-Jordan y InversasEliminación de Gauss-Jordan y Inversas
Eliminación de Gauss-Jordan y InversasSirTikyMikk
 
Ecuaciones con 2 incognitas por el metodo de eliminación
Ecuaciones con 2 incognitas por el metodo de eliminaciónEcuaciones con 2 incognitas por el metodo de eliminación
Ecuaciones con 2 incognitas por el metodo de eliminacióncindy vanessa hernandez
 
Metodo de eliminacion gaussiana simple
Metodo de eliminacion gaussiana simpleMetodo de eliminacion gaussiana simple
Metodo de eliminacion gaussiana simpleTensor
 
Presentación de metodo de eliminación gaussiana
Presentación de metodo de eliminación gaussianaPresentación de metodo de eliminación gaussiana
Presentación de metodo de eliminación gaussianaFernando Alzate
 
Sistema de ecuaciones lineales
Sistema de ecuaciones linealesSistema de ecuaciones lineales
Sistema de ecuaciones linealesSthiven
 
Ecuaciones En El Plano Cartesiano Kevin Alexander Ortega Imbachi
Ecuaciones En El Plano Cartesiano Kevin Alexander Ortega ImbachiEcuaciones En El Plano Cartesiano Kevin Alexander Ortega Imbachi
Ecuaciones En El Plano Cartesiano Kevin Alexander Ortega Imbachikevinortegaimbachi
 
Sistema de ecuaciones
Sistema de ecuacionesSistema de ecuaciones
Sistema de ecuacionesCarlita Vaca
 
Sistemas De Ecuaciones Lineales Con Dos Incognitas
Sistemas De Ecuaciones Lineales Con Dos IncognitasSistemas De Ecuaciones Lineales Con Dos Incognitas
Sistemas De Ecuaciones Lineales Con Dos IncognitasDora Iacuzzi
 
Sistema de Ecuaciones y Métodos
Sistema de Ecuaciones y MétodosSistema de Ecuaciones y Métodos
Sistema de Ecuaciones y MétodosCristian Andrade
 
Ecuaciones y Sistemas de Ecuaciones Lineales
Ecuaciones y Sistemas de Ecuaciones LinealesEcuaciones y Sistemas de Ecuaciones Lineales
Ecuaciones y Sistemas de Ecuaciones Linealesmatbasuts1
 
Solucion del sistema de ecuaciones
Solucion del sistema de ecuacionesSolucion del sistema de ecuaciones
Solucion del sistema de ecuacionesalgebra
 
Resolver ecuación lineal
Resolver ecuación linealResolver ecuación lineal
Resolver ecuación linealaurigame
 
Sistema De Ecuaciones
Sistema De EcuacionesSistema De Ecuaciones
Sistema De EcuacionesIESY
 
Representación gráficas de ecuaciones lineales con dos incógnitas
Representación gráficas de ecuaciones lineales con dos incógnitasRepresentación gráficas de ecuaciones lineales con dos incógnitas
Representación gráficas de ecuaciones lineales con dos incógnitasmduranvacas
 
3.1 definicion-y-clasificacion-de-ecuaciones-lineales
3.1 definicion-y-clasificacion-de-ecuaciones-lineales3.1 definicion-y-clasificacion-de-ecuaciones-lineales
3.1 definicion-y-clasificacion-de-ecuaciones-linealesCarlita Vaca
 
Pasos para resolver una ecuación lineal
Pasos para resolver una ecuación linealPasos para resolver una ecuación lineal
Pasos para resolver una ecuación linealPresentaciones1
 
01 Sistemas De Ecuaciones Lineales
01 Sistemas De Ecuaciones Lineales01 Sistemas De Ecuaciones Lineales
01 Sistemas De Ecuaciones LinealesAlejandro Rivera
 

Destacado (20)

Eliminación de Gauss-Jordan y Inversas
Eliminación de Gauss-Jordan y InversasEliminación de Gauss-Jordan y Inversas
Eliminación de Gauss-Jordan y Inversas
 
Ecuaciones con 2 incognitas por el metodo de eliminación
Ecuaciones con 2 incognitas por el metodo de eliminaciónEcuaciones con 2 incognitas por el metodo de eliminación
Ecuaciones con 2 incognitas por el metodo de eliminación
 
Metodo de eliminacion gaussiana simple
Metodo de eliminacion gaussiana simpleMetodo de eliminacion gaussiana simple
Metodo de eliminacion gaussiana simple
 
Presentación de metodo de eliminación gaussiana
Presentación de metodo de eliminación gaussianaPresentación de metodo de eliminación gaussiana
Presentación de metodo de eliminación gaussiana
 
Electricidad y magnetismo
Electricidad y magnetismoElectricidad y magnetismo
Electricidad y magnetismo
 
Sistema de ecuaciones lineales
Sistema de ecuaciones linealesSistema de ecuaciones lineales
Sistema de ecuaciones lineales
 
Ecuaciones En El Plano Cartesiano Kevin Alexander Ortega Imbachi
Ecuaciones En El Plano Cartesiano Kevin Alexander Ortega ImbachiEcuaciones En El Plano Cartesiano Kevin Alexander Ortega Imbachi
Ecuaciones En El Plano Cartesiano Kevin Alexander Ortega Imbachi
 
Sistema de ecuaciones
Sistema de ecuacionesSistema de ecuaciones
Sistema de ecuaciones
 
Sistemas De Ecuaciones Lineales Con Dos Incognitas
Sistemas De Ecuaciones Lineales Con Dos IncognitasSistemas De Ecuaciones Lineales Con Dos Incognitas
Sistemas De Ecuaciones Lineales Con Dos Incognitas
 
Sistema de Ecuaciones y Métodos
Sistema de Ecuaciones y MétodosSistema de Ecuaciones y Métodos
Sistema de Ecuaciones y Métodos
 
Ecuaciones y Sistemas de Ecuaciones Lineales
Ecuaciones y Sistemas de Ecuaciones LinealesEcuaciones y Sistemas de Ecuaciones Lineales
Ecuaciones y Sistemas de Ecuaciones Lineales
 
Solucion del sistema de ecuaciones
Solucion del sistema de ecuacionesSolucion del sistema de ecuaciones
Solucion del sistema de ecuaciones
 
Resolver ecuación lineal
Resolver ecuación linealResolver ecuación lineal
Resolver ecuación lineal
 
Ecuaciones y tipos
Ecuaciones y tiposEcuaciones y tipos
Ecuaciones y tipos
 
Sistema De Ecuaciones
Sistema De EcuacionesSistema De Ecuaciones
Sistema De Ecuaciones
 
Representación gráficas de ecuaciones lineales con dos incógnitas
Representación gráficas de ecuaciones lineales con dos incógnitasRepresentación gráficas de ecuaciones lineales con dos incógnitas
Representación gráficas de ecuaciones lineales con dos incógnitas
 
3.1 definicion-y-clasificacion-de-ecuaciones-lineales
3.1 definicion-y-clasificacion-de-ecuaciones-lineales3.1 definicion-y-clasificacion-de-ecuaciones-lineales
3.1 definicion-y-clasificacion-de-ecuaciones-lineales
 
Ecuaciones lineales
Ecuaciones linealesEcuaciones lineales
Ecuaciones lineales
 
Pasos para resolver una ecuación lineal
Pasos para resolver una ecuación linealPasos para resolver una ecuación lineal
Pasos para resolver una ecuación lineal
 
01 Sistemas De Ecuaciones Lineales
01 Sistemas De Ecuaciones Lineales01 Sistemas De Ecuaciones Lineales
01 Sistemas De Ecuaciones Lineales
 

Similar a Eliminacion Gaussiana en C

Similar a Eliminacion Gaussiana en C (20)

Practica 1 informática ii
Practica 1 informática iiPractica 1 informática ii
Practica 1 informática ii
 
Ejercicios resueltos practica 2 (nueva 2014) informática ii
Ejercicios resueltos practica 2 (nueva 2014) informática iiEjercicios resueltos practica 2 (nueva 2014) informática ii
Ejercicios resueltos practica 2 (nueva 2014) informática ii
 
Include
IncludeInclude
Include
 
Aritmetica
AritmeticaAritmetica
Aritmetica
 
Jorge informe tecnico
Jorge informe tecnicoJorge informe tecnico
Jorge informe tecnico
 
Tra 130315111309-phpapp02
Tra 130315111309-phpapp02Tra 130315111309-phpapp02
Tra 130315111309-phpapp02
 
Corridas de los ejercicios ya realizados
Corridas de los ejercicios ya realizadosCorridas de los ejercicios ya realizados
Corridas de los ejercicios ya realizados
 
programas varios de visual
programas varios de visualprogramas varios de visual
programas varios de visual
 
Programaswin32c++
Programaswin32c++Programaswin32c++
Programaswin32c++
 
Tra
TraTra
Tra
 
Informe tecnico
Informe tecnicoInforme tecnico
Informe tecnico
 
Deber de programación
Deber de programación  Deber de programación
Deber de programación
 
Ejerciciosprogramacion
EjerciciosprogramacionEjerciciosprogramacion
Ejerciciosprogramacion
 
PROBLEMAS DE POGRAMACION 1
PROBLEMAS DE POGRAMACION 1PROBLEMAS DE POGRAMACION 1
PROBLEMAS DE POGRAMACION 1
 
Practicas c++
Practicas c++Practicas c++
Practicas c++
 
Practicas c++
Practicas c++Practicas c++
Practicas c++
 
algoritmos y Programacion
algoritmos y Programacionalgoritmos y Programacion
algoritmos y Programacion
 
Programacion 55
Programacion 55Programacion 55
Programacion 55
 
Practicas segundo parcial de programacion avanzada
Practicas segundo parcial de programacion avanzadaPracticas segundo parcial de programacion avanzada
Practicas segundo parcial de programacion avanzada
 
Funciones
FuncionesFunciones
Funciones
 

Eliminacion Gaussiana en C

  • 1. Método de EliminaciónGaussianacon pivoteoparcial(con punteros y funciones)parasistemasde necuaciones #include <stdio.h> #include <stdlib.h> #include <math.h> double **memoriaMatriz(int n, int m) { double **pp; inti; pp=(double**)calloc(n,sizeof(double*)); if(pp==NULL) { printf("Fallaobtenermemoria"); return NULL; } for(i=0;i<n;i++) { pp[i]=(double*)calloc(m,sizeof(double)); if(pp[i]==NULL) { printf("Falla al obtenermemoriapara el indice %d",i); return NULL; } } returnpp; } void **leerMatriz(double **mat, int n) { inti,j; for(i=0;i<n;i++) { printf("n"); for(j=0;j<n;j++) { printf("Elemento %d, %d: ",i+1,j+1); scanf("%lf",&mat[i][j]); } } } voidimprimirMatriz(double **mat,int n) { inti,j; printf("n"); for(i=0;i<n;i++) { for(j=0;j<n;j++)
  • 2. printf("%lft",mat[i][j]); printf("n"); } } voidpivoteo (double **a, double *b, int k, int n) { int p=0, j, i; double mayor, temp; for(k=0;k<(n-1);k++) { mayor = fabs (a[k][k]); for (i = k+1; i< n; i++) { if (fabs (a[i][k]) > mayor) { p = i; mayor = fabs (a[i][k]); } } if (p != k) { printf("Entro al pivoteon"); for (j = 0; j < n; j++) { temp = a[k][j]; a[k][j] = a[p][j]; a[p][j] = temp; } temp = b[k]; b[k] = b[p]; b[p] = temp; } } } voidleeArreglo (double *arr, int n) { inti; for (i = 0; i< n; i++) { printf ("Elemento %d: ",i+1); scanf ("%lf", (arr+i)); } } voidimprimeArreglo (double *arr, int n) {
  • 3. inti; for (i = 0; i< n; i++) printf ("x(%d)=%lfn",i+1, *(arr+i)); printf ("n"); } voideliminacionGaussiana (double **a, double *b,int n) { inti,j,k; doublecte; for(i=0;i<n;i++) //Reglonpivote { if(i==0)pivoteo(a,b,k,n); for(j=i+1;j<n;j++) //Eliminación de variables { cte=a[j][i]/a[i][i]; for(k=i;k<n;k++) //Aplica a todo el renglón { a[j][k]=a[j][k]-(cte*a[i][k]); } b[j]=b[j]-cte*b[i]; } } } voidsustitucionHaciaAtras(double **a, double *b,double *x,int n) { inti,j; doublesuma; for(i=n-1;i>=0;i--) { suma=0.0; for(j=i+1;j<n;j++) suma=suma+a[i][j]*x[j]; x[i]=(b[i]-suma)/a[i][i]; } } int main() { int n; double **a,*b,*x; do { printf("Dame el No. de ecuaciones: "); scanf("%d",&n); if(n>1)break; printf("Minimo 2 ecs.n");
  • 4. } while(1); a=memoriaMatriz(n,n); b=(double *) calloc(n,sizeof(double)); x=(double *)calloc(n,sizeof(double)); printf("Matriz de coeficientesn"); leerMatriz(a,n); printf("nTerminosindependientesn"); leeArreglo(b,n); printf("nMatriztrianguladan"); eliminacionGaussiana(a,b,n); imprimirMatriz(a,n); sustitucionHaciaAtras(a,b,x,n); printf("nSolucion:n"); imprimeArreglo(x,n); system("pause"); }