//el programa debe llevar descripsion del producto numero oc monto oc descripcion coo y m piden ingresar datos de factura ingresar modificar
imprimir revicion luego sumatoria total/*
#include <stdio.h>
#include <conio.h>
void menu();
void ingresarpro();
void listarpro();
void modificarpro();
void ingresarprov();
void listarprov();
void comprarcab();
void listarfacab();
void comprardet();
struct pro
{
int codigo;
char descripcion[30];
float precio;
long stock;
} producto;
struct prov
{
int codigo;
char nombre[30];
char direccion[30];
char telefono[9];
} proveedor;
struct fca
{
int numero;
char fecha[15];
int codigoprv;
float total;
} fccompra;
struct fde
{
int numero;
int codigop;
float precio;
int cantidad;
} fdcompra;
FILE *fp, *fpv, *fde, *fca;
main()
{
menu();
return 0;
}
void menu()
{
char c;
do
{
clrscr;
cout<<" menu n";
cout<<" [1] Ingreso de Productos n";
cout<<" [2] Listado de Productos n";
cout<<" [3] Modificaci¢n de Productos n";
cout<<" [4] Ingreso de Proveedores n";
cout<<" [5] Listado de Proveedores n";
cout<<" [6] Factura de Compra Cabecera n";
cout<<" [7] Lista de Facturas n";
cout<<" [8] Factura de Compra Detalle nn";
cout<<"
Salir ... n";
cout<<" Digite la opci¢n .... ";
getch();
switch (c)
{
case 49: ingresarpro();
break;
case 50: listarpro();
break;
case 51: modificarpro();
break;
case 52: ingresarprov();
break;
case 53: listarprov();
break;
case 54: comprarcab();
break;
case 55: listarfacab();
break;
case 56: comprardet();
break;
}
} while(c!=48);
}
void ingresarpro()
{
float pre;
int g;
fp=fopen("C:\producto.dat","a+b");
do
{
clrscr();
cout<<" PRODUCTOS n";
cout<<"--------------n";
cout<<"Ingrese el c¢digo : ";
cin>>"%d",&producto.codigo;
cout<<"Ingrese la descripci¢n : ";
cin>>"%s",producto.descripcion;
cout<<"Precio : ";
cin>>"%f",⪯
producto.precio=pre;
cout<<"nDesea almacenar [1] si y [2] no ... ";
cin>>"%d",&g;
if(g==1)
fwrite(&producto,sizeof(producto),1,fp);
cout<<"Desea continuar [1] si y [2] no ... ";
cin>>"%d",&g;
} while(g==1);
fclose(fp);
}
void listarpro(void)
{
clrscr();
cout<<" LISTADO DE PRODUCTOS n";
cout<<"------------------------------------------------------n";
cout<<" C¢digo Descripci¢n Precio Stock n";
fp=fopen("C:\producto.dat","r+b");
while (!feof(fp))
{
fread(&producto,sizeof(producto),1,fp);
if(!feof(fp))
cout<<(" %d %30s %7.2f %d n",
producto.codigo,producto.descripcion,producto.precio,producto.stock);
}
fclose(fp);
cout<<"------------------------------------------------------n";
cout<<" Presione cualquier tecla para continuar ... ";
getch();
}
void modificarpro()
{
int codb,incl=0;
long curpos;
clrscr();
cout<<" INCREMENTA 10% PRECIO PRODUCTO n";
cout<<"---------------------------------n";
fp=fopen("C:\producto.dat","rb+");
cout<<"Ingrese el codigo a modificar : ";
cin>>"%d",&codb;
while(!feof(fp) && incl==0)
{
fread(&producto,sizeof(producto),1,fp);
if(producto.codigo==codb)
{
curpos=ftell(fp);
fseek(fp,curpos-sizeof(producto),SEEK_SET);
producto.precio=producto.precio*1.1;
fwrite(&producto,sizeof(producto),1,fp);
incl=1;
}
}
fclose(fp);
}
void ingresarprov(void)
{
int g;
fpv=fopen("c:\proveedor.dat","a+b");
do
{
clrscr();
cout<<" PROVEEDORES n";
cout<<"-------------n";
cout<<"C¢digo : ";
cin>>"%d",&proveedor.codigo;
cout<<"Nombre : ";
cin>>"%s",&proveedor.nombre;
cout<<"Direcci¢n : ";
cin>>"%s",&proveedor.direccion;
cout<<"Tel,fono : ");
cin>>"%s",&proveedor.telefono;
cout<<"nDesea almacenar [1] si y [2] no ....";
cin>>"%d",&g;
if(g==1)
fwrite(&proveedor,sizeof(proveedor),1,fpv);
cout<<"Desea continuar [1] si y [2] no ....";
cin>>"%d",&g;
} while(g==1);
fclose(fpv);
}
void listarprov()
{
clrscr();
cout<<" LISTADO DE PROVEEDORES n";
cout<<"-------------------------------------------------------------------------------n";
cout<<" C¢digo Nombre Direcci¢n T,lefono n";
fpv=fopen("c:\proveedor.dat","r+b");
while (!feof(fpv))
{
fread(&proveedor,sizeof(proveedor),1,fpv);
if(!feof(fpv))
cout<<" %d %-30s %-30s %-9s n",
proveedor.codigo,proveedor.nombre,proveedor.direccion,proveedor.telefono);
}
fclose(fpv);
cout<<"-------------------------------------------------------------------------------n";
cout<<" Presione cualquier tecla para continuar ... ";
getche();
imprimir revicion luego sumatoria total/*
#include <stdio.h>
#include <conio.h>
void menu();
void ingresarpro();
void listarpro();
void modificarpro();
void ingresarprov();
void listarprov();
void comprarcab();
void listarfacab();
void comprardet();
struct pro
{
int codigo;
char descripcion[30];
float precio;
long stock;
} producto;
struct prov
{
int codigo;
char nombre[30];
char direccion[30];
char telefono[9];
} proveedor;
struct fca
{
int numero;
char fecha[15];
int codigoprv;
float total;
} fccompra;
struct fde
{
int numero;
int codigop;
float precio;
int cantidad;
} fdcompra;
FILE *fp, *fpv, *fde, *fca;
main()
{
menu();
return 0;
}
void menu()
{
char c;
do
{
clrscr;
cout<<" menu n";
cout<<" [1] Ingreso de Productos n";
cout<<" [2] Listado de Productos n";
cout<<" [3] Modificaci¢n de Productos n";
cout<<" [4] Ingreso de Proveedores n";
cout<<" [5] Listado de Proveedores n";
cout<<" [6] Factura de Compra Cabecera n";
cout<<" [7] Lista de Facturas n";
cout<<" [8] Factura de Compra Detalle nn";
cout<<"
Salir ... n";
cout<<" Digite la opci¢n .... ";
getch();
switch (c)
{
case 49: ingresarpro();
break;
case 50: listarpro();
break;
case 51: modificarpro();
break;
case 52: ingresarprov();
break;
case 53: listarprov();
break;
case 54: comprarcab();
break;
case 55: listarfacab();
break;
case 56: comprardet();
break;
}
} while(c!=48);
}
void ingresarpro()
{
float pre;
int g;
fp=fopen("C:\producto.dat","a+b");
do
{
clrscr();
cout<<" PRODUCTOS n";
cout<<"--------------n";
cout<<"Ingrese el c¢digo : ";
cin>>"%d",&producto.codigo;
cout<<"Ingrese la descripci¢n : ";
cin>>"%s",producto.descripcion;
cout<<"Precio : ";
cin>>"%f",⪯
producto.precio=pre;
cout<<"nDesea almacenar [1] si y [2] no ... ";
cin>>"%d",&g;
if(g==1)
fwrite(&producto,sizeof(producto),1,fp);
cout<<"Desea continuar [1] si y [2] no ... ";
cin>>"%d",&g;
} while(g==1);
fclose(fp);
}
void listarpro(void)
{
clrscr();
cout<<" LISTADO DE PRODUCTOS n";
cout<<"------------------------------------------------------n";
cout<<" C¢digo Descripci¢n Precio Stock n";
fp=fopen("C:\producto.dat","r+b");
while (!feof(fp))
{
fread(&producto,sizeof(producto),1,fp);
if(!feof(fp))
cout<<(" %d %30s %7.2f %d n",
producto.codigo,producto.descripcion,producto.precio,producto.stock);
}
fclose(fp);
cout<<"------------------------------------------------------n";
cout<<" Presione cualquier tecla para continuar ... ";
getch();
}
void modificarpro()
{
int codb,incl=0;
long curpos;
clrscr();
cout<<" INCREMENTA 10% PRECIO PRODUCTO n";
cout<<"---------------------------------n";
fp=fopen("C:\producto.dat","rb+");
cout<<"Ingrese el codigo a modificar : ";
cin>>"%d",&codb;
while(!feof(fp) && incl==0)
{
fread(&producto,sizeof(producto),1,fp);
if(producto.codigo==codb)
{
curpos=ftell(fp);
fseek(fp,curpos-sizeof(producto),SEEK_SET);
producto.precio=producto.precio*1.1;
fwrite(&producto,sizeof(producto),1,fp);
incl=1;
}
}
fclose(fp);
}
void ingresarprov(void)
{
int g;
fpv=fopen("c:\proveedor.dat","a+b");
do
{
clrscr();
cout<<" PROVEEDORES n";
cout<<"-------------n";
cout<<"C¢digo : ";
cin>>"%d",&proveedor.codigo;
cout<<"Nombre : ";
cin>>"%s",&proveedor.nombre;
cout<<"Direcci¢n : ";
cin>>"%s",&proveedor.direccion;
cout<<"Tel,fono : ");
cin>>"%s",&proveedor.telefono;
cout<<"nDesea almacenar [1] si y [2] no ....";
cin>>"%d",&g;
if(g==1)
fwrite(&proveedor,sizeof(proveedor),1,fpv);
cout<<"Desea continuar [1] si y [2] no ....";
cin>>"%d",&g;
} while(g==1);
fclose(fpv);
}
void listarprov()
{
clrscr();
cout<<" LISTADO DE PROVEEDORES n";
cout<<"-------------------------------------------------------------------------------n";
cout<<" C¢digo Nombre Direcci¢n T,lefono n";
fpv=fopen("c:\proveedor.dat","r+b");
while (!feof(fpv))
{
fread(&proveedor,sizeof(proveedor),1,fpv);
if(!feof(fpv))
cout<<" %d %-30s %-30s %-9s n",
proveedor.codigo,proveedor.nombre,proveedor.direccion,proveedor.telefono);
}
fclose(fpv);
cout<<"-------------------------------------------------------------------------------n";
cout<<" Presione cualquier tecla para continuar ... ";
getche();