Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Programacin
Diseo
Diseo del Programa de Facturacin
Facturacin
Carn
1690-11-4626
4626
Nombre:
Elvis Alfredo Son Cipriano
Guatemala, Santa Elena Flores, Petn el 07 del mes de Mayo del 2012
INTRODUCCIN
OBJETIVOS
MENSAJE DE BIENVENIDA
MENU PRINCIPAL
CODIGO FUENTE
#include <conio.h>
#include <stdio.h>
#include <windows.h>
#include <iostream.h>
FILE *g_clientes;
struct
{
char Nit[10];
char Nombre[40];
char Apellido[30];
char Direccion[50];
char Telefono[10];
}clientes;
FILE *gproductos;
struct
{
char clave[10];
char nombre[25];
char descripcion[50];
char precio[10];
} productos;
FILE *ifacturas;
struct
{
char codigo[10];
char ncliente[8];
char fecha[15];
char nclave1[5];
char cantidad[6];
}facturas;
void main ( )
{
int op, op2, op3, op4, op5, op6;
char pescado[10] ;
char clave[5];
float totalpagar;
float precioprod;
int cantidadprod;
char tigre[10];
textcolor(YELLOW);
gotoxy(35,5);
Sleep(1000);
cprintf(" BIENVENIDOS");
textcolor(YELLOW);
gotoxy(5,12);
Sleep(2500);
cprintf(" ESTAN POR ENTRAR AL PROGRAMA DE FACTURACION DE LA EMPRESA
COMPUSYSTEMS");
textcolor(YELLOW);
gotoxy(5,18);
Sleep(2500);
cprintf("Presione Cualquier tecla y enter para continuar?:");
cin>>"e";
clrscr();
do {
clrscr ();
gotoxy (29,2);
textcolor(YELLOW);
gotoxy(30,5);
cprintf("FACTURA COMPUSYSTEMS");
textcolor(GREEN);
gotoxy(6,10);
cprintf("1). INGRESAR CLIENTE");
textcolor(GREEN);
gotoxy(6,13);
cprintf("2). BUSCAR CLIENTE ");
textcolor(GREEN);
gotoxy(6,16);
cprintf("3). INGRESAR PRODUCTO");
textcolor(GREEN);
gotoxy(6,19);
cprintf("4). BUSCAR PRODUCTO");
textcolor(GREEN);
gotoxy(50,10);
cprintf("5). IMPRIMIR FACTURA");
textcolor(GREEN);
gotoxy(50,13);
cprintf("6). BUSCAR FACTURA");
textcolor(GREEN);
gotoxy(50,16);
cprintf(" 7). SALIR");
textcolor(YELLOW);
gotoxy(25,22);
cprintf("Que operacion desea realizar?:");
cin>> op;
switch (op)
{
case 1:
do {
clrscr();
textcolor(YELLOW);
gotoxy(10,5);
cprintf("1). INGRESAR CLIENTE ");
textcolor(YELLOW);
gotoxy(10,10);
cprintf("2). REGRESAR A MENU");
textcolor(YELLOW);
gotoxy(10,20);
cprintf("Que Operacion desea realizar...? ");
cin>> op2;
switch (op2)
{
case 1:
g_clientes=fopen("clientes.bin","ab");
clrscr();
gotoxy(18,5);
cprintf(" POR FAVOR INGRESAR LOS DATOS DEL CLIENTE ");
gotoxy(5,8);
cout<<"1. INGRESAR CLIENTE:";
textcolor(GREEN);
gotoxy(3,11);
cprintf("Ingrese el Nit: ");
cin>> clientes.Nit;
textcolor(GREEN);
gotoxy(3,13);
cprintf("Ingrese el Nombre: ");
gets(clientes.Nombre);
textcolor(GREEN);
gotoxy(3,15);
cprintf("Ingrese el Apellido: ");
gets(clientes.Apellido);
textcolor(GREEN);
gotoxy(3,17);
cprintf("Ingrese la
Dirrecion: ");
gets(clientes.Direccion);
textcolor(GREEN);
gotoxy(3,19);
cprintf("Ingrese el Telefono: ");
cin>>
clientes.Telefono;
fwrite(&clientes,sizeof(clientes),1,g_clientes);
fclose(g_clientes);
break;
}
}
while (op2 != 2);
break;
case 2:
do{
clrscr();
textcolor(YELLOW);
gotoxy(10,5);
cprintf("1). BUSCAR CLIENTE");
gotoxy(10,10);
cprintf("2). REGRESAR A MENU");
textcolor(YELLOW);
gotoxy(10,20);
cprintf("Que Operacion desea realizar...? ");
cin>> op3;
switch(op3)
{
case 1:
g_clientes=fopen("clientes.bin","rb");
clrscr();
textcolor(YELLOW);
gotoxy(6,6);
cprintf(" POR FAVOR INGRESE EL NIT DEL CLIENTE...?--");
cin>> pescado;
fread(&clientes,sizeof(clientes),1,g_clientes);
while(!feof(g_clientes))
{
if (strcmp(clientes.Nit,pescado)==0)
{
clrscr();
textcolor(YELLOW);
gotoxy(25,5);
cprintf(" CLIENTE ENCONTRADO!!!");
textcolor(GREEN);
gotoxy(6,10);
cprintf(" Nit:");
gotoxy(6,12);
cprintf(" Nombre:");
gotoxy(6,14);
cprintf(" Apellido:");
gotoxy(6,16);
cprintf(" Direccion:") ;
gotoxy(6,18);
cprintf(" Telefono:");
gotoxy(20,10);
cout<<clientes.Nit;
gotoxy(20,12);
cout<<clientes.Nombre;
gotoxy(20,14);
cout<< clientes.Apellido;
gotoxy(20,16);
cout<<clientes.Direccion;
gotoxy(20,18);
cout<<clientes.Telefono;
fclose(g_clientes);
getch();
}
fread(&clientes,sizeof(clientes),1,g_clientes);
}
textcolor(GREEN);
gotoxy(19,23);
cprintf("<< PRESIONE UNA TECLA PARA REGRESAR AL MENU>>");
fclose(g_clientes);
getch();
break;
}
}
break;
case 3:
do
{
clrscr();
textcolor(YELLOW);
gotoxy(10,5);
cprintf("1). INGRESAR PRODUCTO");
gotoxy(10,10);
gproductos=fopen("productos.bin","ab");
clrscr();
textcolor(YELLOW);
gotoxy(18,5);
cprintf(" POR FAVOR INGRESAR LOS DATOS DEL PRODUCTO ");
gotoxy(5,8);
cout<<"1. INGRESAR PRODUCTO:";
textcolor(GREEN);
gotoxy(3,11);
cprintf("Ingrese la Clave: ");
cin>> productos.clave;
textcolor(GREEN);
gotoxy(3,13);
cprintf("Ingrese el Nombre: ");
gets(productos.nombre);
textcolor(GREEN);
gotoxy(4,15);
cprintf("Ingrese la Descripcion: ");
gets(productos.descripcion);
textcolor(GREEN);
gotoxy(3,17);
cprintf("Ingrese el
precio:. Q ");
gets(productos.precio);
fwrite(&productos,sizeof(productos),1,gproductos);
fclose(gproductos);
}
}
break;
case 4:
do{
clrscr();
textcolor(YELLOW);
gotoxy(10,5);
cprintf("1). BUSCAR PRODUCTO");
gotoxy(10,10);
cprintf("2). REGRESAR A MENU");
textcolor(YELLOW);
gotoxy(10,20);
cprintf("Que Operacion desea realizar...? ");
cin>> op5;
switch(op5)
{
case 1:
gproductos=fopen("productos.bin","rb");
clrscr();
textcolor(YELLOW);
gotoxy(6,6);
cprintf(" POR FAVOR INGRESE LA CLAVE DEL PRODUCTO...?--");
cin>> clave;
fread(&productos,sizeof(productos),1,gproductos);
while(!feof(gproductos))
{
if (strcmp(productos.clave,clave)==0)
{
clrscr();
textcolor(YELLOW);
gotoxy(25,5);
cprintf(" PRODUCTO ENCONTRADO!!!");
textcolor(GREEN);
gotoxy(6,10);
cprintf(" Clave:");
gotoxy(6,12);
cprintf(" Nombre:");
gotoxy(6,14);
cprintf(" Descripcion:");
gotoxy(6,16);
cprintf(" Precio:") ;
gotoxy(20,10);
cout<<productos.clave;
gotoxy(20,12);
cout<<productos.nombre;
gotoxy(20,14);
cout<< productos.descripcion;
gotoxy(20,16);
cout<<productos.precio;
fclose(gproductos);
getch();
}
fread(&productos,sizeof(productos),1,gproductos);
}
textcolor(GREEN);
gotoxy(19,23);
cprintf("<< PRESIONE UNA TECLA PARA REGRESAR AL MENU>>");
fclose(gproductos);
getch();
break;
}
}
break;
case 5:
do{
clrscr();
textcolor(YELLOW);
gotoxy(10,5);
cprintf("1). REALIZAR UNA FACTURA");
gotoxy(10,10);
cprintf("2). REGRESAR A MENU");
textcolor(YELLOW);
gotoxy(10,20);
cprintf("Que Operacion desea realizar...? ");
cin>> op6;
switch(op6)
{
case 1:
ifacturas=fopen("facturas.bin","ab");
clrscr();
textcolor(YELLOW);
gotoxy(25,2);
cprintf("--->FACTURA DE COMPUSYSTEM<---");
textcolor(GREEN);
gotoxy(5,8);
cprintf("INGRESE EL CODIGO DE FACTURA..?--");
cin>>facturas.codigo;
textcolor(GREEN);
gotoxy(5,12);
cprintf("INGRESE EL NIT DEL CLIENTE..?--");
cin>>facturas.ncliente;
textcolor(GREEN);
gotoxy(5,16);
cprintf("INGRESE LA CLAVE DEL PRODUCTO..?--");
cin>>facturas.nclave1;
textcolor(GREEN);
gotoxy(5,20);
cprintf("INGRESE LA FECHA DE VENTA?--");
cin>>facturas.fecha;
textcolor(GREEN);
gotoxy(5,24);
cprintf("INGRESE LA CANTIDAD DE PRODUCTO QUE DESEA VENDER..?-");
cin>>facturas.cantidad;
clrscr();
textcolor(YELLOW);
gotoxy(30,4);
cprintf("--->COMPUSYSTEM<---");
gotoxy(28,5);
cprintf(" Venta de Computadoras");
gotoxy(24,6);
cprintf(" 6-40 Zona 1, Santa Elena, Peten");
gotoxy( 23,7 );
cprintf(" Propietario: Elvis Alfredo Son");
textcolor(YELLOW);
gotoxy(32,8),
cprintf("NIT: 519769-4");
gotoxy(5,12);
cprintf("No. FACTURA:");
gotoxy(19,12);
cout<<facturas.codigo;
textcolor(YELLOW);
gotoxy(55,12);
cprintf("FECHA:");
gotoxy(63,12);
cout<<facturas.fecha;
{
g_clientes=fopen("clientes.bin","rb");
fread(&clientes,sizeof(clientes),1,g_clientes);
while(!feof(g_clientes))
{
if (strcmp(facturas.ncliente,clientes.Nit)==0)
{
textcolor(YELLOW);
gotoxy(1,14);
cprintf("--------------------------------------------------------------------------------");
textcolor(YELLOW);
gotoxy(3,16);
cprintf(" NOMBRE:");
gotoxy(3,18);
cprintf(" DIRECCION:") ;
gotoxy(55,16);
cprintf(" TELEFONO:");
gotoxy(55,18);
cprintf(" NIT:");
gotoxy(1,20);
cprintf("--------------------------------------------------------------------------------");
gotoxy(12,16);
cout<<clientes.Nombre;
gotoxy(30,16);
cout<< clientes.Apellido;
gotoxy(15,18);
cout<<clientes.Direccion;
gotoxy(66,16);
cout<<clientes.Telefono;
gotoxy(61,18);
cout<<clientes.Nit;
fclose(g_clientes);
}
fread(&clientes,sizeof(clientes),1,g_clientes);
gproductos=fopen("productos.bin","rb");
fread(&productos,sizeof(productos),1,gproductos);
while(!feof(gproductos))
{
if (strcmp(facturas.nclave1,productos.clave)==0)
{
textcolor(YELLOW);
gotoxy(2,22);
cprintf ("CANTIDAD");
gotoxy(5,24);
cout<<facturas.cantidad;
textcolor(YELLOW);
gotoxy(12,22);
cprintf("CODIGO");
gotoxy(12,24);
cout<<productos.clave;
textcolor(YELLOW);
gotoxy(25,22);
cprintf(" DESCRIPCION");
gotoxy(21,24);
cout<<productos.nombre;
gotoxy(32,24);
cout<<productos.descripcion;
textcolor(YELLOW);
gotoxy(45,22);
cprintf("PRECIO UNITARIO");
gotoxy(50,24);
cout<<productos.precio;
textcolor(YELLOW);
gotoxy(70,22);
cprintf("TOTAL");
precioprod=atof(productos.precio);
cantidadprod=atoi(facturas.cantidad);
totalpagar=(precioprod)*(cantidadprod);
gotoxy(52,42);
cprintf("TOTAL A PAGAR..Q");
gotoxy(70,42);
printf("%.2f" , totalpagar);
gotoxy(70,24);
printf("%.2f" , totalpagar);
gotoxy(1,40);
cprintf("--------------------------------------------------------------------------------");
fclose(gproductos);
}
fread(&productos,sizeof(productos),1,gproductos);
}
textcolor(GREEN);
gotoxy(5,43);
cprintf("<<PRESIONE UNA TECLA PARA REGRESAR AL MENU>>");
getch();
fclose(g_clientes);
fclose(gproductos);
}
}
fwrite(&facturas,sizeof(facturas),1,ifacturas);
fclose(ifacturas);
while(op6 !=2);
break;
case 6:
do{
clrscr();
textcolor(YELLOW);
gotoxy(10,5);
cprintf("1). BUSCAR FACTURA");
gotoxy(10,10);
cprintf("2). REGRESAR A MENU");
textcolor(YELLOW);
gotoxy(10,20);
cprintf("Que Operacion desea realizar...? ");
cin>> op6;
switch(op6)
{
case 1:
ifacturas=fopen("facturas.bin","rb");
clrscr();
textcolor(YELLOW);
gotoxy(6,6);
cprintf(" POR FAVOR INGRESE EL CODIGO DE LA FACTURA...?--");
cin>> tigre;
fread(&facturas,sizeof(facturas),1,ifacturas);
while(!feof(ifacturas))
{
if (strcmp(facturas.codigo,tigre)==0)
{
clrscr();
textcolor(GREEN);
gotoxy(1,5);
cprintf(" FACTURA ENCONTRADA!!!");
textcolor(YELLOW);
gotoxy(30,4);
cprintf("--->COMPUSYSTEM<---");
gotoxy(28,5);
cprintf(" Venta de Computadoras");
gotoxy(24,6);
cprintf(" 6-40 Zona 1, Santa Elena, Peten");
gotoxy( 23,7 );
cprintf(" Propietario: Elvis Alfredo Son");
textcolor(YELLOW);
gotoxy(32,8),
cprintf("NIT: 519769-4");
gotoxy(5,12);
cprintf("No. FACTURA:");
gotoxy(19,12);
cout<<facturas.codigo;
textcolor(YELLOW);
gotoxy(55,12);
cprintf("FECHA:");
gotoxy(63,12);
cout<<facturas.fecha;
textcolor(YELLOW);
gotoxy(1,14);
cprintf("--------------------------------------------------------------------------------");
textcolor(YELLOW);
gotoxy(3,16);
cprintf(" NOMBRE:");
gotoxy(3,18);
cprintf(" DIRECCION:") ;
gotoxy(55,16);
cprintf(" TELEFONO:");
gotoxy(55,18);
cprintf(" NIT:");
gotoxy(1,20);
cprintf("--------------------------------------------------------------------------------");
gotoxy(12,16);
cout<<clientes.Nombre;
gotoxy(30,16);
cout<< clientes.Apellido;
gotoxy(15,18);
cout<<clientes.Direccion;
gotoxy(66,16);
cout<<clientes.Telefono;
gotoxy(61,18);
cout<<clientes.Nit;
textcolor(YELLOW);
gotoxy(2,22);
cprintf ("CANTIDAD");
gotoxy(5,24);
cout<<facturas.cantidad;
textcolor(YELLOW);
gotoxy(12,22);
cprintf("CODIGO");
gotoxy(12,24);
cout<<productos.clave;
textcolor(YELLOW);
gotoxy(25,22);
cprintf(" DESCRIPCION");
gotoxy(21,24);
cout<<productos.nombre;
gotoxy(32,24);
cout<<productos.descripcion;
textcolor(YELLOW);
gotoxy(45,22);
cprintf("PRECIO UNITARIO");
gotoxy(50,24);
cout<<productos.precio;
textcolor(YELLOW);
gotoxy(70,22);
cprintf("TOTAL");
precioprod=atof(productos.precio);
cantidadprod=atoi(facturas.cantidad);
totalpagar=(precioprod)*(cantidadprod);
gotoxy(52,42);
cprintf("TOTAL A PAGAR..Q");
gotoxy(70,42);
printf("%.2f" , totalpagar);
gotoxy(70,24);
printf("%.2f" , totalpagar);
gotoxy(1,40);
cprintf("--------------------------------------------------------------------------------");
fclose(ifacturas);
getch();
}
fread(&facturas,sizeof(facturas),1,ifacturas);
}
textcolor(GREEN);
gotoxy(19,60);
cprintf("<< PRESIONE UNA TECLA PARA REGRESAR AL MENU>>");
fclose(ifacturas);
getch();
break;
}
}
CONCLUSIONES
Dar nos una idea clara acerca de la importancia de presentar un esquema para
poder visualizar el programa
Mostrar en imgenes sencillas lo que se quiere lograr.
E-GRAFIAS
Apuntes de Cuaderno