Sunteți pe pagina 1din 6

#include<iostream>

#include<iomanip>
#include<conio.h>
using namespace System;
using namespace std;
void main()
{
//Primer paso: Apartar espacios de Memoria para los arreglos
char AGNOS[15][10];// int AGNOS[15];
char POZOS[20][45];
float PRODUCCION[20][15], TOTYEAR[15],TOTPOZ[20];
//Paso 2: Pedir al usuario la cantidad de aos y la cantidad de pozos a procesar
cout<<"\n A cu\240ntos a\xA4os desea realizar el an\240lisis (m\240x: 15)";
int na;
cin>>na;
cout<<"\n A cu\240ntos Pozos desea realizar el an\240lisis (m\240x: 20)";
int np;
cin>>np;
//Paso 3: Ingresar los nombres de los Pozos
cin.ignore();
for(int p=0; p<=np-1;p++)
{
cout<<"\n Nombre del Pozo ["<<p+1<<"] = ";

cin.getline(POZOS[p],45);
}
//Paso 4: Ingresar los datos de los aos a evaluar

cout<<"\n\n Digite los a\x40os a analizar en su orden";

cin.ignore();
for(int q=0; q<=na-1;q++)
{
cout<<"\n Digite el A\xA4o["<<q+1<<"] = ";

cin.getline(AGNOS[q],10);
}

/* En caso de que AGNOS se hubiese declarado numrico


for(int q=0; q<=na-1; q++)
{

cout<<"\n Digite el A\xA4o["<<q+1<<"] = ";


cin>>AGNOS[q];

}
*/

//Paso 5: Ingresar la produccin en MBPD por POZO


for(int laquequieran=0; laquequieran<=np-1; laquequieran++)
{
cout<<"\n Para el pozo "<<POZOS[laquequieran]<<" digite el numero de MBPD
para el ao: ";
for(int laotra=0; laotra<=na-1; laotra++)
{
cout<<"\n"<<AGNOS[laotra]<<" ";
cin>>PRODUCCION[laquequieran][laotra];

}
}
//Paso 6: Sumar la produccin de cada campo en todos los aos del anlisis y el resultado
almacenarlo en TOTPOZ

cout<<"\n Produccion por pozos ";


for(int i=0; i<=np-1; i++)
{
float ACUMPOZOS=0;
for(int j=0; j<=na-1; j++)
{
ACUMPOZOS+=PRODUCCION[i][j];
}
TOTPOZ[i]=ACUMPOZOS;

cout<<"\n"<<POZOS[i]<<"\t"<<TOTPOZ[i];
}
//Paso 7: Sumar la produccin en cada ao de todos los pozos y el resultado almacenarlo
en TOTYEAR
cout<<"\n Produccion por aos ";
for(int z=0; z<=na-1; z++)
{
float ACUMYEAR=0;
for(int d=0; d<=np-1; d++)
{
ACUMYEAR+=PRODUCCION[d][z];
}
TOTYEAR[z]+=ACUMYEAR;
cout<<"\n"<<AGNOS[z]<<"\t"<<TOTYEAR[z];
}
//Paso 8: Hallar el promedio de produccin en los pozos
float SUMPOZOS=0, PROMPOZOS;
for(int a=0; a<=np-1; a++)
{
SUMPOZOS+=TOTPOZ[a];
}
PROMPOZOS=SUMPOZOS/np;
cout<<"\n El promedio de produccion de los pozos es: "<<PROMPOZOS;
//Paso 8.1: Hallar el promedio de produccin en los aos
float SUMYEAR=0, PROMYEAR;

for (int w=0; w<=na-1;w++)


{
SUMYEAR+=TOTYEAR[w];
}
PROMYEAR=SUMYEAR/na;
cout<<"\n El promedio de produccion anual de los campos trabajados es: "<<PROMYEAR;
//Paso 9: Imprimir el nombre de los pozos y su produccin, siempre que su produccin est
por encima del promedio
for (int m=0; m<=np-1; m++)
{
if(TOTPOZ[m]>PROMPOZOS)
{
cout<<"\n Los pozos que estan por encima del promedio de produccion son: ";
cout<<"\n"<<POZOS[m]<<"\t"<<TOTPOZ[m];
}
else
{
}
}
//Paso 10: Ordenar en orden descendente por produccion, e imprimir

//Paso 11: Imprimir el ao en el que hubo la mayor produccin


float mayorpryear=TOTYEAR[0];
int f;
for(int u=0; u<=na-1; u++)

{
if(TOTYEAR[u]>mayorpryear)
{
mayorpryear=TOTYEAR[u];
f=u;
}
}
cout<<"\n En el a\xA4o "<<AGNOS[f]<<" se present\xA2 la producci\xA2 mas alta con un total de
"<<mayorpryear;
//Paso 12: Imprimir el promedio de produccin de cada ao
float promyear[15];
int r;
for(r=0;r<=na-1;r++)
{
promyear[r]=TOTYEAR[r]/np;
}
cout<<"\n El promedio de produccion por ao es: ";
cout<<"\n"<<AGNOS[r]<<"\t"<<promyear[r];
getch();
}

S-ar putea să vă placă și