Algoritmos En C++
-
Upload
bayron-santoya -
Category
Documents
-
view
6 -
download
0
description
Transcript of Algoritmos En C++
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"; }
}