Está en la página 1de 7

#include<iostream.

h>

#include<conio.h>

#include<fstream>

void main()

struct datos_pro

{char tipo[30];

float masa;

int dia, mes, anio;

}produ;

int opc=1,nuevomes;

float acumu;

char nom_arc[40],nue_tipo[30];

ifstream lec;

ofstream esc;

while(opc>=1 && opc<6)

cout<<"**********+MENU************\n";

cout<<"Escoja una de las siguientes opciones\n";

cout<<"1)Registrar producto\n";

cout<<"2)Visualizar datos del archivo\n";

cout<<"3)Calcular produccion por tipo de producto\n";

cout<<"4)Visualizar produccion por un mes en especifico\n";

cout<<"5)Salir del programa\n";

cin>>opc;

while(opc<1 || opc>=6)
{

cout<<"Opcion invalida, reitroduzca\n";

cin>>opc;

switch(opc)

{ case 1:

cout<<"Ingrese el nombre del archivo\n";

fflush(stdin);cin.getline(nom_arc,40,'.');

esc.open(nom_arc,ios::app);

if(esc.bad()==1)

cout<<"Error de apertura";

else

cout<<"Ingrese los siguientes datos a pedir\n";

cout<<"Ingrse el tipo del producto\n";

fflush(stdin);cin.getline(produ.tipo,30,'.');

cout<<"Ingrse la masa del producto\n";

cin>>produ.masa;

cout<<"Ingrese el dia de produccion\n";

cin>>produ.dia;

cout<<"Ingrse el mes de produccion\n";

cin>>produ.mes;

cout<<"Ingrse el año de produccion\n";

cin>>produ.anio;

esc<<produ.tipo<<".";

esc<<produ.masa;
esc<<produ.dia;

esc<<produ.mes;

esc<<produ.anio<<endl;

esc.close();

}break;

case 2:

cout<<"Ingrese el nombre del archivo\n";

fflush(stdin);cin.getline(nom_arc,40,'.');

lec.open(nom_arc);

if(lec.bad()==1)

cout<<"Error de apertura\n";

else

cout<<"Lista de produccion\n";

cout<<"Tipo Masa dia mes año\n";

lec.clear(0);

lec.getline(produ.tipo,30,'.');

lec>>produ.masa;

lec>>produ.dia;

lec>>produ.mes;

lec>>produ.anio;

while(lec.eof()==0)

cout<<produ.tipo;

cout<<produ.masa;

cout<<produ.dia;
cout<<produ.mes;

cout<<produ.anio<<endl;

lec.getline(produ.tipo,30,'.');

lec>>produ.masa;

lec>>produ.dia;

lec>>produ.mes;

lec>>produ.anio;

lec.close();

}break;

case 3:

cout<<"Ingrese el nombre del archivo\n";

fflush(stdin);cin.getline(nom_arc,40,'.');

lec.open(nom_arc);

if(lec.bad()==1)

cout<<"Error de apertura\n";

else

cout<<"Indique el tipo de producto que se quiere calcular\n";

fflush(stdin);cin.getline(nue_tipo,30,'.');

acumu=0;

lec.clear(0);

lec.getline(produ.tipo,30,'.');

lec>>produ.masa;

lec>>produ.dia;

lec>>produ.mes;
lec>>produ.anio;

while(lec.eof()==0)

if(strcmpi(produ.tipo,nue_tipo)==0)

{acumu+=produ.masa;

lec.getline(produ.tipo,30,'.');

lec>>produ.masa;

lec>>produ.dia;

lec>>produ.mes;

lec>>produ.anio;

lec.close();

cout<<"La masa total es:\n";

cout<<acumu;

}break;

case 4:

cout<<"Ingrese el nombre del archivo\n";

fflush(stdin);cin.getline(nom_arc,40,'.');

lec.open(nom_arc);

if(lec.bad()==1)

cout<<"Error de apertura\n";

else

cout<<"Indique el mes de produccion que se quiere ver\n";

cin>>nuevomes;
lec.clear(0);

lec.getline(produ.tipo,30,'.');

lec>>produ.masa;

lec>>produ.dia;

lec>>produ.mes;

lec>>produ.anio;

while(lec.eof()==0)

if(produ.mes==nuevomes)

{cout<<produ.tipo;

cout<<produ.masa;

cout<<produ.dia;

cout<<produ.mes;

cout<<produ.anio<<endl;

else

{cout<<"No hubo produccion ese mes\n";

lec.getline(produ.tipo,30,'.');

lec>>produ.masa;

lec>>produ.dia;

lec>>produ.mes;

lec>>produ.anio;

}break;

case 5:
cout<<"Programa terminado\n";

getch();

También podría gustarte