Vous êtes sur la page 1sur 6

GAUSS C++:

#include<iostream>
#include<complex>
int i,j,n,m,k,x,y,z;
float A[10][10],B[10][10],divisor,pv;
void imprimir();
using namespace std;
void main()
{
cout<<"\tDIGITE NUMERO DE FILAS===>>";
cin>>n;
cout<<"\n";
cout<<"\tDIGITE NUMERO DE COLUMNAS==>>";
cin>>m;
for (i=1;i<=n;i++){
for (j=1;j<=m;j++){
cout<<"\n";
cout<<"\tA["<<i<<","<<j<<"]=";
cin>>A[i][j];
cout<<"\n";
}
}
cout<<"\n\n\t\t* MATRIZ ORIGINAL *";
cout<<"\n\n\n";
imprimir();
for (i=1;i<=n;i++){
divisor=A[i][i];
for (j=1;j<=m;j++){
A[i][j]=A[i][j]/divisor;
}
cout<<"\n\n\t\t* MATRIZ DE GAUSS *";
cout<<"\n\n\n";
imprimir();
for (k=i+1;k<=n;k++){
pv=(-1)*A[k][i];
for (j=1;j<=m;j++){
A[k][j]=pv*A[i][j]+A[k][j];
}
}
}
cout<<"\n\t * MATRIZ RESULTANTE DE GAUSS *\n\n";
imprimir();
system("pause");

}
void imprimir() {
for (int yair = 1; yair <=n; yair++){
for(int lario= 1; lario <= m; lario ++){
cout<<"\t" << A[yair][lario] ;
}
cout<<"\n";
}
}

JORRDAN C++:
#include<iostream>
#include<complex>
int i,j,n,m,k,x,y,z;
float A[10][10],B[10][10],divisor,pv;
void imprimir();
using namespace std;
void main()
{
cout<<"\tDIGITE NUMERO DE FILAS===>>";
cin>>n;
cout<<"\n";
cout<<"\tDIGITE NUMERO DE COLUMNAS==>>";
cin>>m;
for (i=1;i<=n;i++){
for (j=1;j<=m;j++){
cout<<"\n";
cout<<"\tA["<<i<<","<<j<<"]=";
cin>>A[i][j];
cout<<"\n";

}
}
cout<<"\n\n\t\t* MATRIZ ORIGINAL *";
cout<<"\n\n\n";
imprimir();
for (i=1;i<=n;i++){
divisor=A[i][i];
for (j=1;j<=m;j++){
A[i][j]=A[i][j]/divisor;
}
cout<<"\n\n\t\t* MATRIZ DE JORDAN *";
cout<<"\n\n\n";
imprimir();
for (k=1;k<=n;k++){
if(k!=i){
pv=(-1)*A[k][i];
for (j=1;j<=m;j++){
A[k][j]=pv*A[i][j]+A[k][j];
}
}
}
}
cout<<"\n\t * MATRIZ RESULTANTE DE JORDAN *\n\n";
imprimir();
system("pause");
}
void imprimir() {
for (int y = 1; y <=n; y++){
for(int l= 1; l <= m; l ++){
cout<<"\t" << A[y][l] ;
}
cout<<"\n";
}
}

JACOBI C++:
/*jacobi*/
#include<math.h>
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
int n,m,maxit,i,j,sw,contp,k,p;
double a[20][20],x[20],xn[20],sum,ant[20],e[20],swi[20],tol;
void main()
{
cout<<"numero de ecuaciones:";
cin>>n;
cout<<"numero de incognitas:";
cin>>m;
cout<<"numero maximo de iteraciones:";
cin>>maxit;
cout<<"escriba tolerancia:";
cin>>tol;
for (i=1;i<=n;i++)
{
for (j=1;j<=m+1;j++){
cout<<"\ta["<<i<<","<<j<<"]=";
cin>>a[i][j];
}
}
for (i=1;i<=n;i++)
{
x[i]=0;
swi[i]=0;
}
sw=0;k=1;
while((sw == 0)&&(k <= maxit))
{
for (i=1;i<=n;i++)
{
sum=0;
for (j=1;j<=m;j++){
sum=sum+a[i][j]*x[j];
}
sum=sum+a[i][m+1];
xn[i]=sum;
e[i]=fabs(xn[i]-x[i]);
if (e[i]<=tol)
{
swi[i]=1;
}
else
{
swi[i]=0;
}
}

contp=0;
cout<<" EN LA ITERACION "<<k<<"\n";
for (i=1;i<=n;i++)
{
cout<<"x"<<i<<"="<<xn[i]<<"
e"<<i<<"="<<e[i]<<"
sw"<<i<<"="<<swi[i]<<contp<<"\n";
}
for (i=1;i<=n;i++)
{
if (swi[i] == 1)
{
contp=contp+1;
}
}
if (contp == n){
sw=1;
}
else{
for (i=1;i<=n;i++)
{
x[i]=xn[i];
}
k=k+1;
}
}
cout<<" EN LA ITERACION "<<k<<"\n";
for (i=1;i<=n;i++)
{
cout<<"x"<<i<<"="<<xn[i]<<"
e"<<i<<"="<<e[i]<<"\n";
}
}

SEIDEL C++:
#include<math.h>
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
int n,m,maxit,i,j,sw,contp,k,p;
double a[20][20],x[20],xn[20],sum,ant[20],e[20],swi[20],tol;
void main()
{
cout<<"numero de ecuaciones:";
cin>>n;
cout<<"numero de incognitas:";
cin>>m;
cout<<"numero maximo de iteraciones:";
cin>>maxit;
cout<<"escriba tolerancia:";
cin>>tol;

for (i=1;i<=n;i++)
{
for (j=1;j<=m+1;j++){
cout<<"\ta["<<i<<","<<j<<"]=";
cin>>a[i][j];
}
}
for (i=1;i<=n;i++)
{
x[i]=0;
xn[i]=0;
}
sw=0;
while((sw==0)&&(k<=maxit))
{
for (i=1;i<=n;i++)
{
sum=0;
for (j=1;j<=m;j++){
sum=sum+a[i][j]*xn[j];
}
sum=sum+a[i][m+1];
xn[i]=sum;
}
for (i=1;i<=n;i++){
e[i]=fabs(xn[i]-x[i]);
if (e[i]<=tol)
{
swi[i]=1;
}
else
{
swi[i]=0;
}
}
cout<<" EN LA ITERACION "<<k<<"\n";
for (i=1;i<=n;i++)
{
cout<<"x"<<i<<"="<<xn[i]<<"\n";
}
contp=0;i=1;
while (i<=n)
{
if (swi[i]==1)
{
contp=contp+1;
}
i=i+1;
}
if (contp==n){
sw=1;
}
else{
k=k+1;
for (i=1;i<=n;i++)
{

x[i]=xn[i] ;
}

}
}
cout<<" EN LA ITERACION "<<k<<"\n";
for (i=1;i<=n;i++)
{
cout<<"x"<<i<<"="<<xn[i]<<"\n";
}

Vous aimerez peut-être aussi