Está en la página 1de 3

1er Obligatorio Programación 1

INET - 2019

Se desea representar y manipular información de datos de artículos en


un supermercado.

Los datos de artículos son: nombre de marca de máximo 20 caracteres


(ejemplo: cololo, conaprole, las acacias), descripción del articulo de máximo
40 caracteres (ejemplo: salsa de tomates, dulce de leche) precio unitario y
cantidad en stock. El nombre junto con la descripción identican al artículo.

Los clientes pueden estar registrados como asociados en cuyo caso acu-
mulan puntos con cada compra. Cada 10 pesos en compras se acumula un
punto. La información de clientes es: cedula de identidad que identica al
cliente, nombre y apellido de a los más 20 caracteres cada uno, dirección,
telefono, puntos acumulados y número correlativo de la última factura.

La información de facturas es: Nombre y cédula del cliente si este está


registrado (utilice cédula -1 cuando el cliente no está registrado), número
correlativo de factura del cliente. Se sugiere tener un número correlativo co-
mún para todos los no asociados. Además cada factura tiene a lo más 20
renglones. Suponga no se ingresarán más de 20 renglones. La factura tiene
además la fecha del día de la factura. Se sugiere identicar la factura con :
cédula de identidad (o -1 si no es cliente asiduo) y número correlativo.

Cuando se factura se debe actualizar el stock de los artículos vendidos,


el número correlativo y la cantidad de puntos.

Representación:

Debe representar los artículos, los clientes y las facturas utilizando arre-
glos con tope. A los efectos de probar el sistema asuma un máximo de 30
elementos en cada arreglo. A su vez cada factura tendrá como parte de su
información otro arreglo con tope de tamaño máximo 20 para sus renglones.
Se sugiere guardar como información de cada renglón: nombre y descripción
del artículo, cantidad y precio unitario.

Operaciones:

1
Debe implementar las siguientes operaciones:

Alta de información:

1. Alta de un artículo, si ya existe uno con la misma clave aumente


el stock.
2. Alta de un cliente como asociado. Si ya existe uno con la cédula
despliegue mensaje de error. Si no existía colocar como puntaje 0
y como número correlativo 1.
3. Alta de factura. Solicita número de cédula del cliente si es asocia-
do. Se asocia a la factura el número correlativo y la fecha del día.
Luego lee los renglones de la factura. Verica los artículos estén
en el arreglo de artículos. Actualiza stock de cada artículo. punta-
je del cliente y número correlativo de factura del cliente. En caso
de no asociado no imprime información de cliente, solo el número
correlativo y la fecha.

Otras operaciones:

1. Desplegue el puntaje de un cliente dada su cédula de identidad.


Si el cliente no existe pregunte si quiere darlo de alta. En caso
armativo invoca a la operación de alta correspondiente.
2. Desplegue la información de todos de artículos de una marca dado
el nombre de marca. Debe acumular los stock de todos los artículos
e imprmirlo al nal.
3. Imprima en pantalla las facturas de un cliente dado por su cédula.
Debe imprimir cédula, nombre, fecha y los renglones. De cada
renglón se imprime su importe y al nal importe total y puntaje
del cliente.
4. Dado un correlativo, imprima en pantalla la factura de un NO
cliente con ese número. Verique se haya generado una factura con
ese número viendo el correlativo correspondiente a los no clientes
(cédula = -1).

Se pide:

2
1. Documentación con descripción de los tipos de datos y descripción de
lo que hace cada operación en español.
2. Proyecto con prototipos e implementación de las operaciones de cada
tipo de datos. Se sugiere leer EJEMPLO DE CREACIÓN DE
PROYECTO que se encuentra publicado en la página del curso para
saber cómo denir el proyecto.
3. Documentación impresa y CD con código a entregar en clase.

Además:

Se puede trabajar en grupos de 1 a 4 alumnos.

En la primer semana del obligatorio deben enviar un email a la profesora


con nombre y cédula de los alumnos que integran sus grupos. Se utilizará la
dirección del email enviado a la profesora como email de contacto en caso de
necesidad.

Para implementar el obligatorio utilice Codeblocks. Puede obtenerlo de co-


deblocs.org. Instale codeblocks-17.12mingw-setup.exe (en windows) o bajelo
del Centro de Software en ubuntu.

Fechas de entrega:
grupo 1I: 26/7.
grupo 1A: 29/7.

emails de la profesora: psperatto@adinet.com.uy, psperatto@gmail.com

También podría gustarte