#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <iostream.h>
#include <ctype.h>
//ESTRUCTURA
struct Aceitera
{
int CodigoProducto;
char Descripcion[30];
int Unidades;
float Precio;
};
struct Aceitera ProducAceitera;
//ARCHIVO
FILE *ArchiAceite;
//DECLARACION DE FUNCIONES
void IngresoProductos(void);
void ConsultaDeProductos(void);
void Venta_ModificacionDelProducto(void);
void EliminarRegistro(void);
void EliminarArchivoCompleto(void);
void ListadoDeProductos(void);
main()
{
int op;
clrscr();
cout<<"\n\t\t Universidad Mariano Galvez";
cout<<"\n\t\t Programacion I. Ing Mario de Paz";
cout<<"\n\t\t\t Grupo No. 3";
cout<<"\n\n\n\t\t\t\ >>>ACEITERA<<<";
cout<<"\n\n\n\n\ Seleccione una Opcion:\n";
cout<<"\n\r 1. Ingreso de Producto";
cout<<"\n\r 2. Consulta de Producto";
cout<<"\n\r 3. Venta_Modificacion de Producto";
cout<<"\n\r 4. Eliminar un Producto";
cout<<"\n\r 5. Eliminar Archivo";
cout<<"\n\r 6. Listado de Productos\n\n ";
cin>>op;
switch(op)
{
case 1: IngresoProductos(); break;
case 2: ConsultaDeProductos(); break;
case 3: Venta_ModificacionDelProducto();break;
case 4: EliminarRegistro(); break;
case 5: EliminarArchivoCompleto(); break;
case 6: ListadoDeProductos(); break;
default: cout<<"\a\n Opcion no valida!";
cout
<<"\n Presiona una tecla para salir";getch(); break; }
}
//FUNCION INGRESO
void IngresoProductos(void)
{
int CodigoProducto;
clrscr();
cout<<"\n\n\r INGRESE LOS CAMPOS DEL PRODUCTO";
//Abrir Nuestro_Archivo en solo-lectura
ArchiAceite
=fopen("PRODUCTOS.SEC","rb+"); //En caso de que no exista lo crearemos
if(ArchiAceite==NULL)
ArchiAceite
=fopen("PRODUCTOS.SEC","wb"); cout<<"\n\n\n\r Ingrese el Codigo del Producto: ";
cin>>CodigoProducto;
//Leer el "Registro_Vehiculo" de tamaño=sizeof(Registro_Vehiculo)
//Del archivo: Nuestro_Archivo
fread(&ProducAceitera
,sizeof(ProducAceitera
),1,ArchiAceite
); //Mientras no se encuentre el final del archivo
while(!feof(ArchiAceite
)) {
if(ProducAceitera.CodigoProducto==CodigoProducto)
{
cout<<"\n\n\n\r ---Registro duplicado--- Este Id ya existe!!!";
return;
}
fread(&ProducAceitera
,sizeof(ProducAceitera
),1,ArchiAceite
); }
cout
<<"\n\r Descripcion del Producto: "; gets(ProducAceitera.
Descripcion); cout<<"\n\r Cantidad de unidades disponibles: ";
cin>>ProducAceitera.Unidades;
cout<<"\n\r Precio: ";
cin>>ProducAceitera.Precio;
ProducAceitera.CodigoProducto=CodigoProducto;
//Guardar el registro completo
fwrite(&ProducAceitera
,sizeof(ProducAceitera
),1,ArchiAceite
); //Cerrar archivo
cout<<"\n\n\n\ Producto Registrado!!";
cout<<"\n\ Presione una tecla para contunuar...";
return;
}
//FUNCION CONSULTA
void ConsultaDeProductos(void)
{
int cod;
clrscr();
cout<<"\n\ CONSULTA DE PRODUCTOS PARA LA VENTA";
//Abrir Archivo en solo-lectura
ArchiAceite
=fopen("PRODUCTOS.SEC","rb"); if(ArchiAceite==NULL)
{
cout<<"\a\n\n\ No hay Ningun archivo Guardado";
cout<<"\n\ Presione una tecla para continuar...";
return;
}
cout<<"\n\n\n\ Cual es el codigo del producto?: ";
cin>>cod;
fread(&ProducAceitera
,sizeof(ProducAceitera
),1,ArchiAceite
); while(!feof(ArchiAceite
)) {
cout<<"\n\ Codigos Archivados: ";
cout<<ProducAceitera.CodigoProducto;
cout<<"\n\ Codigo Ingresado: ";
cout<<cod;
if(ProducAceitera.CodigoProducto==cod)
{
cout<<"\n\n\n------------------------------------------------------";
cout<<"\nCodigo\tDescripcion\t\tUnidades\tPrecio";
cout<<"\n\------------------------------------------------------\n";
cout<<ProducAceitera.CodigoProducto;
cout<<"\t"<<ProducAceitera.Descripcion;
cout<<"\t\t"<<ProducAceitera.Unidades;
cout<<"\t\t"<<ProducAceitera.Precio<<"\n";
cout<<"\n\n\n Oprima una tecla para continuar...";
return;
}
fread(&ProducAceitera
,sizeof(ProducAceitera
),1,ArchiAceite
); }
cout<<"\n\r No se encuentra el Registro!!!";
cout<<"\n\r Oprima cualquier tecla para continuar...";
return;
}
//FUNCION VENTA-MODIFICACION DEL PRODUCTO
void Venta_ModificacionDelProducto(void)
{
}
//FUNCION ELIMINAR UN REGISTRO
void EliminarRegistro(void)
{
}
//FUNCION ELIMINAR ARCHIVO COMPLETO
void EliminarArchivoCompleto(void)
{
char opcion;
clrscr();
cout<<"\n\n ELIMINACION DE ARCHIVO COMPLETO";
cout<<"\n\n Desea eliminar el archivo Completo? S/N ";
cin>>opcion;
if(opcion=='S')
{
if(remove("PRODUCTOS.SEC")!=0) cout<<"\a\n\n No har Archivo para eliminar";
else
cout<<"\n\n Archivo Eliminado";
cout<<"\n Pulse una tecla para continuar...";
}
return;
}
//FUNCION DE LISTADO
void ListadoDeProductos(void)
{
clrscr();
cout<<"\n\LISTADO DE REGISTROS DE PORDUCTO";
ArchiAceite
=fopen("PRODUCTOS.SEC","rb"); if(ArchiAceite==NULL)
{
cout<<"\a\n\n\ No hay Ningun archivo Guardado";
cout<<"\n\ Oprima cualquier tecla para contuniuar...";
return;
}
cout<<"\n\n\n------------------------------------------------------";
cout<<"\nCodigo\tDescripcion\t\tUnidades\tPrecio";
cout<<"\n\------------------------------------------------------\n";
fread(&ProducAceitera
,sizeof(ProducAceitera
),1,ArchiAceite
); while(!feof(ArchiAceite
)) {
cout<<ProducAceitera.CodigoProducto;
cout<<"\t"<<ProducAceitera.Descripcion;
cout<<"\t\t"<<ProducAceitera.Unidades;
cout<<"\t\t"<<ProducAceitera.Precio<<"\n";
fread(&ProducAceitera
,sizeof(ProducAceitera
),1,ArchiAceite
); }
cout<<"\n\------------------------------------------------------";
cout<<"\n\nFin del listado";
cout<<"\n\nOprima ENTER para continuar...";
return;
}