elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Re: POR FAVOR AYUDA CON PROGRAMA EN C++ en: 10 Noviembre 2013, 23:11 pm
ok, gracias por la pagina.
2  Programación / Programación C/C++ / POR FAVOR AYUDA CON PROGRAMA EN C++ en: 10 Noviembre 2013, 11:12 am
Que tal, Estoy iniciándome en esto de la programación y me han dejado investigar un programa que resuelva ecuaciones por el método de gauss. Quisiera saber si alguien puede ayudarme a poner comentarios a lo largo del programa para comprender el funcionamiento del mismo en cada una (o la mayoría) del código fuente que les presento a continuación:

#include <iostream.h>
#include <conio.h>
#include <stdio.h>


using namespace std;

void captura(double a[50][50],int n)
{
int c,f;
for(c=0;c<n;c++)
{
                for(f=0;f<n+1;f++)
                {
                                  if(f<n)
                                  {
                                  system("cls");
                                  cout<<"\n\n\n\n  Captura de la matriz :";
                                  cout<<"\n\n X"<<f+1<<" :  ";
                                  cin>>a[c][f];
                                  }
                                  else
                                  {
                                      system("cls");
                                  cout<<"\n\n\n\n  Captura de la matriz :";
                                  cout<<"\n\n Constante = ";
                                  cin>>a[c][f];
                                  }                               
                               
                }

}
}



void imprimir (double a[50][50],int n)
{
int c,f;
cout<<"\n\n\n Matriz de "<<n<<" x "<<n<<"\n\n\n  ";
for(c=0;c<n;c++)
{
                for(f=0;f<n+1;f++)
                {
                                if(f<n)
                                {
                                    cout<<"  "<<a[c][f];
                                }
                                else
                                {
                                    cout<<" = "<<a[c][f];
                                }                                   
                }
                cout<<"\n  ";
}
}


void metodogaussjordan (double a[50][50], int n)
{
int e,ee,c,f,cc,ff;
double r[50][50],d,g,b;
e = 0;

for(c=0;c<n;c++)
{
b=a[c][c];
           
           for(f=0;f<n+1;f++)
           {
                             a[c][f]=(a[c][f])/b;
                             r[c][f]=a[c][f];                   
           }
           
           cout<<"\n R"<<c+1<<" = R"<<c+1<<"/"<<b;
           cout<<"\n\n";
           for(ee=0;ee<n;ee++)
           {
                           for(ff=0;ff<n+1;ff++)
                           {
                           
                           cout<<"   "<<a[ee][ff];
                                   
                           }
                           cout<<"\n";
           }
           
          cout<<"\n\n Suma de renglones multiplicados por pibote\n\n";
           for(cc=e;cc<n;cc++)
           {
           d=a[cc+1][c];
           
                           
                           
                           for(ff=0;ff<n+1;ff++)
                           {
                           r[cc+1][ff]=((-1*d)*(a[c][ff]))+(a[cc+1][ff]);
                           
                               
                           
                           a[cc][ff]=r[cc][ff];         
                           }
                           
                           
                           
           }
          e=e+1;
         
          if(c>0 )
          {
          for(cc=0;cc<c;cc++)
          {
          g=r[cc][c];
                    for(ff=0;ff<n+1;ff++)
                    {
                           r[cc][ff]=((-1*g)*(a[c][ff]))+(a[cc][ff]);
                         a[cc][ff]=r[cc][ff];
                    }
                   
           
          }
          }
         
          if(c<n)
          {
          for(cc=0;cc<n;cc++)
           {
           
           
                           for(ff=0;ff<n+1;ff++)
                           {
                                               
                           cout<<"   "<<r[cc][ff];
                                 
                           }
                           
                           cout<<"\n";
           }}
           cout<<"\n";         
}
}




int main ()
{

int n,f,c,cc,ff,e,ee,sn;
double a[50][50],b,d,g,r[50][50];
do{system("cls");
cout<<"\n\n\n\n\n         BIENVENIDO";
cout<<"\n Eliminacion de GAUSS JORDAN de una Matriz n x n \n\n\n";
cout<<"\n Por favor teclee el tamaño de la matriz : ";
cin>>n;
captura(a,n);
imprimir(a,n);
cout<<"\n\n\n\n";
metodogaussjordan(a,n);


cout<<"\n\n";
for(c=0;c<n; c++)
{
cout<<"\n\n  X"<<c+1<<" = "<<a[c][n];
}
getch();
do{system("cls");
cout<<"\n\n\n   ¿ DESEA RESOLVER OTRO SISTEMA DE ECUACIONES ?\n\n\n\n  1.- Si \n\n  2.- NO(salir)\n\n OPC. : ";
cin>>sn;
}while(sn<1 || sn>2);
}while(sn<2);
return 0;
}





Sería de gran ayuda su apoyo. Mil gracias y saludos.
3  Programación / Programación General / DUDA CON FUNCIONAMIENTO DE PROGRAMA en: 10 Noviembre 2013, 11:00 am
Que tal, Estoy iniciándome en esto de la programación y me han dejado investigar un programa que resuelva ecuaciones por el método de gauss. Quisiera saber si alguien puede ayudarme a poner comentarios a lo largo del programa para comprender el funcionamiento del mismo en cada una (o la mayoría) del código fuente que les presento a continuación:

#include <iostream.h>
#include <conio.h>
#include <stdio.h>


using namespace std;

void captura(double a[50][50],int n)
{
int c,f;
for(c=0;c<n;c++)
{
                for(f=0;f<n+1;f++)
                {
                                  if(f<n)
                                  {
                                  system("cls");
                                  cout<<"\n\n\n\n  Captura de la matriz :";
                                  cout<<"\n\n X"<<f+1<<" :  ";
                                  cin>>a[c][f];
                                  }
                                  else
                                  {
                                      system("cls");
                                  cout<<"\n\n\n\n  Captura de la matriz :";
                                  cout<<"\n\n Constante = ";
                                  cin>>a[c][f];
                                  }                               
                               
                }

}
}



void imprimir (double a[50][50],int n)
{
int c,f;
cout<<"\n\n\n Matriz de "<<n<<" x "<<n<<"\n\n\n  ";
for(c=0;c<n;c++)
{
                for(f=0;f<n+1;f++)
                {
                                if(f<n)
                                {
                                    cout<<"  "<<a[c][f];
                                }
                                else
                                {
                                    cout<<" = "<<a[c][f];
                                }                                   
                }
                cout<<"\n  ";
}
}


void metodogaussjordan (double a[50][50], int n)
{
int e,ee,c,f,cc,ff;
double r[50][50],d,g,b;
e = 0;

for(c=0;c<n;c++)
{
b=a[c][c];
           
           for(f=0;f<n+1;f++)
           {
                             a[c][f]=(a[c][f])/b;
                             r[c][f]=a[c][f];                   
           }
           
           cout<<"\n R"<<c+1<<" = R"<<c+1<<"/"<<b;
           cout<<"\n\n";
           for(ee=0;ee<n;ee++)
           {
                           for(ff=0;ff<n+1;ff++)
                           {
                           
                           cout<<"   "<<a[ee][ff];
                                   
                           }
                           cout<<"\n";
           }
           
          cout<<"\n\n Suma de renglones multiplicados por pibote\n\n";
           for(cc=e;cc<n;cc++)
           {
           d=a[cc+1][c];
           
                           
                           
                           for(ff=0;ff<n+1;ff++)
                           {
                           r[cc+1][ff]=((-1*d)*(a[c][ff]))+(a[cc+1][ff]);
                           
                               
                           
                           a[cc][ff]=r[cc][ff];         
                           }
                           
                           
                           
           }
          e=e+1;
         
          if(c>0 )
          {
          for(cc=0;cc<c;cc++)
          {
          g=r[cc][c];
                    for(ff=0;ff<n+1;ff++)
                    {
                           r[cc][ff]=((-1*g)*(a[c][ff]))+(a[cc][ff]);
                         a[cc][ff]=r[cc][ff];
                    }
                   
           
          }
          }
         
          if(c<n)
          {
          for(cc=0;cc<n;cc++)
           {
           
           
                           for(ff=0;ff<n+1;ff++)
                           {
                                               
                           cout<<"   "<<r[cc][ff];
                                 
                           }
                           
                           cout<<"\n";
           }}
           cout<<"\n";         
}
}




int main ()
{

int n,f,c,cc,ff,e,ee,sn;
double a[50][50],b,d,g,r[50][50];
do{system("cls");
cout<<"\n\n\n\n\n         BIENVENIDO";
cout<<"\n Eliminacion de GAUSS JORDAN de una Matriz n x n \n\n\n";
cout<<"\n Por favor teclee el tamaño de la matriz : ";
cin>>n;
captura(a,n);
imprimir(a,n);
cout<<"\n\n\n\n";
metodogaussjordan(a,n);


cout<<"\n\n";
for(c=0;c<n; c++)
{
cout<<"\n\n  X"<<c+1<<" = "<<a[c][n];
}
getch();
do{system("cls");
cout<<"\n\n\n   ¿ DESEA RESOLVER OTRO SISTEMA DE ECUACIONES ?\n\n\n\n  1.- Si \n\n  2.- NO(salir)\n\n OPC. : ";
cin>>sn;
}while(sn<1 || sn>2);
}while(sn<2);
return 0;
}





Sería de gran ayuda su apoyo. Mil gracias y saludos.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines