Dev - C++ - Sumar columnas en un arreglo de 5 dimensiones

   
Vista:

Sumar columnas en un arreglo de 5 dimensiones

Publicado por Jessica (1 intervención) el 26/11/2013 03:39:54
Queridos amigos soy nueva en el foro , no se si este pidiendo ayuda correctamente mi problema es el siguiente tengo un arreglo de 5 dimensiones que fue llenado con una funcion randomica , necesito sumar las columnas pero no encuentro la forma , el programa es un cuadro estadistico que se visualiza en archivo de texto este es el codigo
#include <iostream>

#include <fstream>
#include <iomanip>
#include <cstdlib>
#include <stdio.h>
using std :: cout;
using std:: endl;
using std:: cerr;
using std:: ofstream;
using std:: setw;
using std:: setprecision;
using std:: ios;
using std:: left;
using std:: right;
using std:: setprecision;

//Creacion del archivo de Salida



int main()
{

char provincias[25][15] = {"Azuay", "Boliv ","Cañar" ,"Carchi" ,"Chimbor" ,"Cotopax" ,"El Oro" ,"Esmeral" ,"Galápag", "Guayas" ,
"Imbabur" ,"Loja" ,"LosRios" ,"Manabí" ,"Morona","Napo","Orellan" ,"Pastaza" , "Pichin" ,"SantaE" ,"SantoD", "Sucumbí" ,"Tungura",
"Zamora","Total"};

int m[25][2][3][2][2] = {0};


int i, j ,k ,l,n;
int vertical[24]={0},vertical2[24]={0},verticalt[24]={0},horizontal2[24]={0},suma=0;
int horizontal[24]={0};
double m1[25][2][3][2][2]={0};
/*Creacion del archivo de Salida */

ofstream ArchivoResultados ("cuadroresultados2.dat",ios::out);
if (!ArchivoResultados)
{
cerr<<"No se puede Abrir el archivo cuadroresultados"<<endl;
exit(1);

}

/*LLenado de matriz multidimensional*/

for( i =0 ; i<24;i++)
{
for(j=0;j<2;j++)
{
for(k=0;k<3;k++)
{

for(l=0;l<2;l++)
{
for (n=0;n<2;n++)
{


m[i][j][k][l][n]= (rand()%9)+1;

}
}
}
}
}




/*Suma de las filas de EPN */
for( i =0 ; i<24;i++)
{
for(j=0;j<1;j++)
{
for(k=0;k<3;k++)
{

for(l=0;l<2;l++)
{
for (n=0;n<2;n++)
{
vertical[i]=vertical[i]+m[i][j][k][l][n];


}
}
}
}
}







// Suma Filas de las u central
for( i =0 ; i<24;i++)
{
for(j=1;j<2;j++)
{
for(k=0;k<3;k++)
{

for(l=0;l<2;l++)
{
for (n=0;n<2;n++)
{
vertical2[i]=vertical2[i]+m[i][j][k][l][n];

}
}
}
}
}

// Suma Total de las filas universidades
for( i =0 ; i<24;i++)
{
for(j=0;j<2;j++)
{
for(k=0;k<3;k++)
{

for(l=0;l<2;l++)
{
for (n=0;n<2;n++)
{
verticalt[i]=verticalt[i]+m[i][j][k][l][n];


}
}
}
}
}






// Suma De columnas de la matriz

for(j=0;j<2;j++)
{

for(k=0;k<3;k++)
{

for(l=0;l<2;l++)
{
for (n=0;n<2;n++)
{
suma=0;

for( i=0 ; i<24;i++)

{
horizontal[i]=horizontal[i]+m[i][j][k][l][n];


}
}
}


}


}



// Porcentaje de los mienbros de la fila universidades
for( i =0 ; i<24;i++)
{
for(j=0;j<2;j++)
{

for(k=0;k<3;k++)
{
for(l=0;l<2;l++)
{
for (n=0;n<2;n++)
{
m1[i][j][k][l][n]=(m[i][j][k][l][n]*100.0)/vertical[i];
}
}
}
}
}


// visualizacion de la matriz
ArchivoResultados<<"\t\t\t\t\t\t\t\t\t ESCUELA POLITECNICA NACIONAL "<<endl;
ArchivoResultados<<"\t\t\t\t\t\t\t\t\t\t ESFOT "<<endl;
ArchivoResultados<<"\t\t\t\t\t\t\t\t\t CUADRO ESTADISTICO "<<endl;
ArchivoResultados<<"\t\t\t\t\ E.P.N. "<<"\t\t\t\t\t\t\t\t\t\t\t\t\t U.C.E. "<<endl;
ArchivoResultados<<"\t\t"<<setw(10)<<"SIST."<<setw(29)<< "CIVIL."<<setw(29)<<" MECAN."<<setw(32)<<"SIST."<<setw(30)<< "CIVIL."<<setw(30)<<" MECAN."<<endl;
ArchivoResultados<<endl;

ArchivoResultados<<"\t"<<setw(5)<<"H"<<setw(6)<<"M"<<setw(8)<<"H"<<setw(6)<<"M"<<setw(9)<<"H"<<setw(6)<<"M"<<setw(8)<<"H"<<setw(6)<<"M"<<setw(9)<<"H"<<setw(6)<<"M";
ArchivoResultados<<setw(9)<<"H"<<setw(5)<<"M";
ArchivoResultados<<" "<<setw(11)<<"H"<<setw(6)<<"M"<<setw(8)<<"H"<<setw(6)<<"M"<<setw(8)<<"H"<<setw(6)<<"M"<<setw(9)<<"H"<<setw(6)<<"M"<<setw(9)<<"H"<<setw(6)<<"M";
ArchivoResultados<<setw(8)<<"H"<<setw(6)<<"M"<<endl;
ArchivoResultados<<endl;
for( i =0 ; i<24;i++)
{

ArchivoResultados<<provincias[i]<<"\t";

for(j=0;j<2;j++)
{


for(k=0;k<3;k++)
{


for(l=0;l<2;l++)
{
for (n=0;n<2;n++)
{

ArchivoResultados<<right<<setw(5)<<m[i][j][k][l][n]<<" ";


}

ArchivoResultados<<" ";


}

ArchivoResultados<<" ";

}


ArchivoResultados<<vertical[i]<<" ";

}

ArchivoResultados<<" " " " <<vertical2[i];
ArchivoResultados<<" "<<verticalt[i];
ArchivoResultados<<endl<<endl<<endl;

// Impresion de la matriz
ArchivoResultados<<"\t";

for(j=0;j<2;j++)
{
for(k=0;k<3;k++)
{
for(l=0;l<2;l++)
{
for(n=0;n<2;n++)
{

ArchivoResultados<<" "<<setprecision(3)<<m1[i][j][k][l][n]<<" ";
}

ArchivoResultados<<" ";
}
ArchivoResultados<<" ";

}


}
ArchivoResultados<<endl<<endl<<endl<<endl;
}

// Impresion suma columnas
ArchivoResultados<<"TOTAL"<<" ";
for(i=0;i<24;i++)
{
ArchivoResultados<<horizontal[i]<<" ";

}


system("pause");
return 0;

}

Gracias anticipadas !!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder