Proyecto Final

Embed Size (px)

Citation preview

Escuela de ciencias bsicas, tecnologa e ingenieraCurso: Estructura de datos

PROYECTO FINALESTRUCTURA DE DATOS

Presentado por:PABLO ISIDRO ORDOEZ GUTIERREZCOD : 10593456

Grupo: 301305

Presentado a:HERMES MOSQUERA

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAINGENIERA DE SISTEMASPopayn- CaucaJUNIO 12 DE 2013

ContenidoINTRODUCCIN3OBJETIVOS4DESCRIPCION DE LA SOLUCION7SALIDAS DE PANTALLA23CONCLUSION27BIBLIOGRAFIA28

INTRODUCCIN

La programacin estructurada se refiere a un conjunto de tcnicas que aumentan considerablemente la productividad del programa reduciendo en elevado grado el tiempo requerido para escribir, verificar, depurar y mantener los programas. Utiliza un nmero limitado de estructuras de control que minimizan la complejidad de los programas y por consiguiente reducen los errores y hacen los programas en general ms eficientes, la estructura de datos es importante ya que determina los tipos de operaciones que podemos realizar en los datos y la eficiencia con que pueden llevarse a cabo. Tambin determina la forma dinmica que puede ser en el trato con nuestros datos.

El presente proyecto tiene como finalidad profundizar en los temas vistos en el curso de estructura de datos en donde el estudiante mediante el reconocimiento de conceptos pondr en prctica pasando de esta forma a la profundizacin, al dar solucin a un problema planteado empleando el programa dev c++ e implementando el uso de punteros, estructuras y gestin de memoria entre otros.En la solucin del planteamiento del problema se podrn adquirir las competencias y destrezas que requiere el curso de a cuerdo a sus objetivos propuestos para el estudiante en su formacin.

OBJETIVOS Adquirir mediante el proceso de reconocimiento y profundizacin la apropiacin de conceptos vistos en el curso estructura de datos. Identificar los requerimientos segn el planteamiento del problema. Realizar la codificacin del programa en dev c++ Implementar el uso de estructuras, apuntadores, gestin de memoria entre otros. Describir el desarrollo del programa realizado paso a paso.

Planteamiento del problema.La distribuidora SUPERMAXI es una empresa que dedica su actividad econmica a la comercializacin de productos de consumo, el cual se abastece de los proveedores a nivel nacional, quienes a travs de rdenes de compra hacen entrega de los productos que son almacenados en la bodega de la distribuidora, manteniendo as surtido su negocio y su inventario al da. La distribuidora a travs del tiempo viene realizando este proceso de forma manual archivado en carpetas fsicas, labor dispendiosa para los controles de su inventario.Por lo anterior en pro de mejorar su sistema de informacin ha decidido acudir a la Universidad para dar solucin a su problema a travs de sus estudiantes en del curso Estructura de datos. Para lo cual se requiere disear un sistema de informacin que permita registrar la informacin a travs de estructuras de datos as:1. Informacin de los Proveedores: quienes surten los productos a la distribuidora. Para lo cual se requieren los siguientes datos (Nombre del proveedor, Nit del proveedor, direccin de correspondencia, telfono de contacto).

2. Informacin del Inventario existente en bodega: para lo cual se requieren los siguientes datos (cdigo del producto, descripcin del producto, la cantidad en unidades).

3. Informacin del registro de las Ventas: para lo cual se requieren los datos de la factura (Numero de la factura, Nombre del cliente, fecha de la venta, cdigo del producto, descripcin del producto, valor del producto y un valor total de las ventas).De acuerdo a la captura de requerimientos anteriores se plantean los siguientes Requerimientos funcionales: Una interfaz amigable con color de fondo donde est el nombre de la Universidad, nombre del CEAD y el nombre de la aplicacin DISTRIMAXI y los datos bsicos de quien disea el programa, (cdigo, nombre y grupo), adems de implementarle la contrasea de ingreso genrica que ser: 123 la cual validar el ingreso a la aplicacin. Tendr un men de opciones de Nivel general con las tres opciones ya descritas (Proveedores, Inventario y Ventas). Al seleccionar la opcin Proveedores lo lleva a un nuevo men donde tendr las opciones de Insertar, visualizar, eliminar y salir de Proveedores, al salir lo debe regresar al men principal. Al seleccionar la opcin Inventario lo lleva a un nuevo men donde tendr las opciones de Insertar, visualizar, eliminar y salir de inventarios, al salir lo debe regresar al men principal. Al seleccionar la opcin Ventas lo lleva a un nuevo men donde tendr las opciones de registrar una venta, visualizarla venta, eliminar un producto de la venta, una opcin para acumular el total de las ventas y la opcin de salir de ventas, al salir lo debe regresar al men principal.

DESCRIPCION DE LA SOLUCION

Se creo el proyecto en el programa dev c++, que cumple las caracteristicas y requisitos descritos en el planteamiento del problema DISTRIMAXI.1. En primera instancia se crea tres estructuras asignndole a cada estructura sus atributos Proveedor char NombreProveedor[50]; char Nitproveedor[13]; char Direccion[50]; char TelefonoProveedor; struct proveedor *sig;

Inventario char Codigoproducto[13]; char Descripcionproducto[100]; char unidadesproducto[50]; struct inventario *sig2;

Venta char Numerofactura[13]; char Nombrecliente[50]; char Fechaventa[50]; char Codigoproducto2[50]; char Descripcionproducto2[50]; char Valorproducto[13]; char Valortotaldelasventas[50]; struct venta *sig3;2. Despus de crear las estructuras se crean punteros del tipo de cada estructura struct proveedor *caba,*aux,*nuevo; struct inventario *caba2,*aux2,*nuevo2; struct venta *caba3,*aux3,*nuevo3;

3. se pasa a declarar las funciones que se usaran en todo el programa void iniciaPrograma(); int muestraMenu(); void muestraMensaje(int nuOpcSel); void realizarPausa(); void limpiarPantalla(); int menuproveedor(); int menuinventario(); int menuventa();void muestraMensajeProveedor(int nuOpcSel2); void muestraMensajeinventario(int nuOpcSel3);void muestraMensajeventa(int nuOpcSel4);void insertarproveerdor();void listara();void eliminar(void);void insertarinventario();void listarinventario();void eliminarinventario(void);void insertarventa();void listarventa();void eliminarventa(void);

4. se crea portada dentro del main que incluye el ingreso de una contrasea que es : 123 para poder validarse en el sistema y poder ingresar al men de opciones.int main(int argc, char *argv[]){ system ("color 4f"); int codigo; cout