Documentos de Académico
Documentos de Profesional
Documentos de Cultura
practica-DEVc
practica-DEVc
#include<conio.h>
#include<string.h>
#include<stdlib.h>
#include<iomanip>
#include<time.h>
//----------------------------------------------------------------------
struct t_producto
{
int codigo;
char desc[10];
float precio;
int cantidad;
int stock;
}; t_producto producto[5] ;
int main()
{
srand(time(NULL));
int opc;
int num=5,bandera=0;
while(opc!=4)
{
system("cls");
cout<<"\n";
cout<<setw(50)<<"[1] Generar y mostrar datos"<<endl<<endl;
cout<<setw(45)<<"[2] Vender un producto"<<endl<<endl;
cout<<setw(64)<<"[3] Productos por debajo del STOCK minino"<<endl<<endl;
cout<<setw(32)<<"[4] Salir"<<endl<<endl;
cout<<setw(32)<<"opc: "; cin>>opc;
switch(opc)
{
case 1:
if(bandera==0)
{
generar_datos(num);
bandera=1;
}
mostrar_datos(num);
getch(); break;
case 2:
vender(num);
break;
case 3:
mostrar_datos(num);
mostrar_stock(num);
getch(); break;
}
}
return 0;
}
//-----------------------------------
FUNCIONES-----------------------------------------------
//---------------------------------------------------------------------------------
----------
void generar_datos(int num)
{
int i;
for(i=0;i<num;i++)
{
producto[i].codigo=5000+rand()%(10000); // los
datos se generan aleatoriamente
strcpy(producto[i].desc,nombre[i]);
producto[i].precio=(rand()%(10000));
producto[i].cantidad=5+(rand()%(6));
producto[i].stock=4+(rand()%5);
}
//---------------------------------------------------------------------------------
----------
void mostrar_datos(int num)
{
int i;
system("cls"); //borrar pantalla
cout<<"\n\n\n";
cout<<setw(15)<<"codigo"<<setw(13)<<"descipcion"<<setw(10)<<"precio"<<setw(15) ;
cout<<"existencia"<<setw(10)<<"Stock"<<endl<<endl;
for(i=0;i<num;i++)
{
cout<<setw(15)<< producto[i].codigo;
cout<<setw(10)<< producto[i].desc;
cout<<setw(13)<< producto[i].precio;
cout<<setw(10)<< producto[i].cantidad;
cout<<setw(10)<< producto[i].stock;
cout<<endl<<endl;
}
}
//---------------------------------------------------------------------------------
----------
void vender(int num)
{ int flag = 0;
int codigo,cantidad,pos;
char resp;
int i;
system("cls");
do
{
mostrar_datos(num);
for(int i=0;i<=num;i++)
{
if(codigo == producto[i].codigo)
{ flag=1; pos=i;}
}
if( flag == 1)
{
cout<<"\nCantidad a comprar : "<<endl;
cin>>cantidad;
if(cantidad>producto[pos].cantidad)
{
cout<<"La cantidad de productos que desea comprar es mayor
a la existencia";
getch();
}
else
{
producto[pos].cantidad=producto[pos].cantidad-
cantidad;
mostrar_datos(num);
if (flag == 0)
{cout<<"Codigo no valido"<<endl; getch(); }
}while(resp=='s' || resp=='S' ) ;
//---------------------------------------------------------------------------------
------------
void mostrar_stock(int num)
{
cout<<"Productos por debajo del Stock minimo: "<<endl<<endl;
for(int i=0;i<=num;i++)
{
if(producto[i].cantidad<producto[i].stock)
{
cout<<"codigo: "<<producto[i].codigo<<endl;
cout<<"descripcion: "<<producto[i].desc<<endl<<endl ;
}
}
}