Advertisement
idsystems

LPP_Practica27_InventarioAutos

Jun 15th, 2024
484
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.33 KB | None | 0 0
  1. /*
  2.     Ejercicio:
  3.     ejemplo de un manejo de inventario sencillo en una tienda de vehículos.
  4.    
  5.     1. Primero el usuario debe digitar todos los datos del inventario inicial
  6.        - marca
  7.        - linea
  8.        - color
  9.        - cantidad inicial inventario
  10.        - valor unitario del vehículo
  11.    
  12.     2. teniendo el inventario registrado se debe presentar un menú con las
  13.        siguientes opciones:
  14.        1. Ingreso de producto.
  15.        2. Venta de producto.
  16.        3. Cambio de Valor Unitario.
  17.        4. Mostrar información inventario actual.
  18.        5. Salir
  19.    
  20.     3. Repetir el menú hasta que la opción seleccionada por el usuario
  21.        sea la 5. salir     
  22. */
  23. /*
  24.     Registros
  25. */
  26. registro rVehiculo
  27.   cadena[100] marca
  28.   cadena[100] linea
  29.   cadena[50]  color
  30.   entero      cantidad
  31.   real        valorUnidad
  32. fin registro
  33.  
  34. /*
  35.     variables globales
  36. */
  37. rVehiculo vAuto
  38. booleano continuar
  39. entero menu
  40.  
  41.  
  42. /*
  43.     procedimientos
  44. */
  45. /* procedimiento encargado de generar titulos con formato */
  46. procedimiento CrearTitulo(cadena[100] vTitulo)
  47. inicio
  48.  
  49.   llamar nueva_linea
  50.   escriba "********** " + vTitulo + " **********"
  51.   llamar nueva_linea
  52.   llamar nueva_linea
  53.  
  54. fin
  55.  
  56. /* procedimiento encargado de solicitar al usuario el cargue inicial de inventario */
  57. procedimiento CargueInicialInventario
  58. inicio
  59.  
  60.   llamar nueva_linea
  61.  
  62.   llamar CrearTitulo("Cargue Inicial de Inventario")
  63.  
  64.   escriba "Ingrese la MARCA del vehiculo: "
  65.   lea vAuto.marca
  66.  
  67.   escriba "Ingrese la LINEA del vehiculo: "
  68.   lea vAuto.linea
  69.  
  70.   escriba "Ingrese el COLOR del vehiculo: "
  71.   lea vAuto.color
  72.  
  73.   escriba "Ingrese la CANTIDAD inicial de inventario: "
  74.   lea vAuto.cantidad
  75.  
  76.   escriba "Ingrese el VALOR unitario incial del vehiculo: "
  77.   lea vAuto.valorUnidad
  78.  
  79.   llamar nueva_linea
  80.  
  81. fin
  82.  
  83. /* Procedimiento para realziar un ingreso de inventario */
  84. procedimiento IngresarInventario
  85. entero nuevos
  86. inicio
  87.  
  88.   llamar nueva_linea
  89.  
  90.   llamar CrearTitulo("Ingreso de Inventario")
  91.  
  92.   escriba "Cuantos vehiculos nuevos desea ingresar: "
  93.   lea nuevos
  94.  
  95.   /* realizar la suma */
  96.   vAuto.cantidad <- vAuto.cantidad + nuevos
  97.  
  98.   escriba "Ingreso realizado correctamente!"
  99.  
  100.   llamar nueva_linea
  101.  
  102. fin
  103.  
  104. /* procedimiento para venta de inventario */
  105. procedimiento VenderVehiculo
  106. entero vendidos
  107. inicio
  108.  
  109.   llamar nueva_linea
  110.  
  111.   llamar CrearTitulo("Venta de vehiculos")
  112.  
  113.   escriba "Cuantos Vehiculos fueron vendidos: "
  114.   lea vendidos
  115.  
  116.   /* resta al inventario */
  117.   vAuto.cantidad <- vAuto.cantidad - vendidos
  118.  
  119.   escriba "Venta realizada correctamente!"
  120.  
  121.   llamar nueva_linea
  122.  
  123. fin
  124.  
  125. /* procedimiento para cambiar valor unitario */
  126. procedimiento CambiarValorUnitario
  127. real nuevoValor
  128. inicio
  129.  
  130.   llamar nueva_linea
  131.  
  132.   llamar CrearTitulo("Cambio de Valor Unitario")
  133.  
  134.   escriba "Ingrese el nuevo valor del vehiculo: "
  135.   lea nuevoValor
  136.  
  137.   /* asiganacion nuevo valor al registro */
  138.   vAuto.valorUnidad <- nuevoValor
  139.  
  140.   escriba "Se realizo el cambio correctamente!"
  141.  
  142.   llamar nueva_linea
  143.  
  144. fin
  145.  
  146. /* procedimiento para mostrar en pantalla estado de inventario actual */
  147. procedimiento MostrarInventario
  148. real valorTotal
  149. inicio
  150.  
  151.   llamar nueva_linea
  152.  
  153.   llamar CrearTitulo("Informacion de Inventario Actual")
  154.  
  155.   escriba "Marca: " + vAuto.marca
  156.   llamar nueva_linea
  157.  
  158.   escriba "Linea: " + vAuto.linea
  159.   llamar nueva_linea
  160.  
  161.   escriba "Color: " + vAuto.color
  162.   llamar nueva_linea
  163.  
  164.   escriba "Cantidad: "
  165.   escriba vAuto.cantidad
  166.   llamar nueva_linea
  167.  
  168.   escriba "Valor Unitario: $ "
  169.   escriba vAuto.valorUnidad
  170.   llamar nueva_linea
  171.  
  172.   /* total inventario */
  173.   valorTotal <- (vAuto.cantidad * vAuto.valorUnidad)
  174.  
  175.   escriba "Valor Total Inventario: $ "
  176.   escriba valorTotal
  177.  
  178.   llamar nueva_linea
  179.  
  180. fin
  181.  
  182. /*
  183.     funciones
  184. */
  185. /* funcion para carga de menu en pantalla */
  186. funcion CargarMenu : entero
  187. entero opcion
  188. inicio
  189.  
  190.   llamar nueva_linea
  191.  
  192.   llamar CrearTitulo("Menu de Opciones")
  193.  
  194.   escriba "1. Ingresar Producto."
  195.   llamar nueva_linea
  196.   escriba "2. Vender Producto."
  197.   llamar nueva_linea
  198.   escriba "3. Cambiar Valor Unitario."
  199.   llamar nueva_linea
  200.   escriba "4. Mostrar Informacón del Inventario Actual."
  201.   llamar nueva_linea
  202.   escriba "5. Salir"
  203.   llamar nueva_linea
  204.  
  205.   escriba "Que opcion desea realizar?: "
  206.   lea opcion
  207.  
  208.   retorne opcion
  209.  
  210. fin
  211.  
  212. /*
  213.     programa principal
  214. */
  215. inicio
  216.  
  217. /* inicializacion de variables */
  218. continuar <- verdadero
  219.  
  220. /* ingresar informacion inicial del inventario */
  221. llamar CargueInicialInventario()
  222.  
  223. Repita
  224.   /* cargar el menu */
  225.   menu <- CargarMenu()
  226.  
  227.   /* toma decisiones */
  228.   Si (menu = 1) Entonces
  229.     /* ingresar inventario */
  230.     llamar IngresarInventario()
  231.   Sino
  232.     Si (menu = 2) Entonces
  233.       /* vender producto */
  234.       llamar VenderVehiculo()
  235.     Sino
  236.       Si (menu = 3) Entonces
  237.         /* cambiar valor unitario */
  238.         llamar CambiarValorUnitario()
  239.       Sino
  240.         Si (menu = 4) Entonces
  241.           /* mostrar informacion del inventario */
  242.           llamar MostrarInventario()
  243.         Sino
  244.           Si (menu = 5) Entonces
  245.             /* salir */
  246.             continuar <- falso
  247.           Sino
  248.             escriba "Por favor ingrese una opcion entre 1 y 5."
  249.           Fin Si
  250.         Fin Si
  251.       Fin Si
  252.     Fin Si
  253.   Fin Si  
  254. Hasta (continuar = falso)
  255.  
  256. escriba "Gracias por utilizar nuestro programa!"
  257.  
  258. fin
  259.  
Tags: Registros
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement