Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Proyecto final: libreria

Estas en el tema de Proyecto final: libreria en el foro de C/C++ en Foros del Web. !Hola buenas tardes a todos! el motivo de mi mensaje es para consultar a los expertos en C++ para que me ayuden a desarrollar un ...
  #1 (permalink)  
Antiguo 24/01/2012, 12:27
 
Fecha de Ingreso: enero-2012
Mensajes: 2
Antigüedad: 12 años, 9 meses
Puntos: 0
Exclamación Proyecto final: libreria

!Hola buenas tardes a todos! el motivo de mi mensaje es para consultar a los expertos en C++ para que me ayuden a desarrollar un programa para un proyecto final. Es mi ultimo semestre para graduarme y estoy muy nerviosa por que ademas la maestra es muy estricta ...me pone calificaciones muy bajas si mi programa no arroja el resultado correcto y nisiquiera me indica el error o me preoporciona una retroalimentación, por eso estoy muy estresada. Y queria pedir su apoyo con mi proyecto final, les agradecweria eternamente si me pueden ayudar con esto:

Instrucciones
Una librería tiene 7 clasificaciones de libros y 10 vendedores
Clasificaciones de libros:

1.- Científicos
2.- Técnicos
3.- Religiosos
4.- Literario
5.-Artísticos
6.-Oficial
7.-Comercial

La librería guarda la información de las ventas realizadas por los vendedores en una tabla como la siguiente:

Vendedores
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7

En cada casilla se guarda la cantidad de libros por tipo vendidos por un vendedor; por ejemplo, en la casilla del renglón 2, columna 5, se guarda la cantidad de libros vendidos de la clasificación 2 (técnicos) por el vendedor 5.

Nota que, si un vendedor no ha vendido nada, debe haber 0 en la casilla correspondiente; es decir, es necesario que al inicio la tabla esté llena de ceros, para que el programa pueda registrar las ventas que se vayan dando

Nota también que la tabla de datos de la librería utiliza las clasificaciones de 1 al 7 y los vendedores del 1 al 10; o sea, no empieza desde el número 0, como son los arreglos en C++. Tú debes resolver esto en tu programa, de manera que el usuario no tenga que utilizar el número 0, ni para vendedor, ni para modelo.

Se requiere que hagas un programa que tenga el siguiente menú de opciones:

A. Registrar las ventas realizadas por un vendedor para una clasificación de libro.

Datos que se piden al usuario:
Clasificación: 1
Vendedor: 3
Unidades vendidas: 2

Lo que significa que el vendedor 3 vendió 2 unidades de la clasificación Científico

B. Consultar la cantidad de Libros que un vendedor ha vendido de una determinada clasificación.

Datos que se piden al usuario:
Clasificación: 1
Vendedor: 3

Despliegue en pantalla:
Las unidades vendidas por el vendedor 3 de la clasificación Científicos son: 2

C. Consultar la cantidad total de libros que se ha vendido de una cierta clasificación.
Datos que se piden al usuario:
Clasificación: 1

Despliegue en pantalla:
La cantidad de libros vendidos de la clasificación Científicos son: 10 unidades.

D. Consultar el costo total de los libros vendidos por un vendedor de una determinada clasificación
Costo por unidad de una determinada clasificación:

Científicos $200
Técnicos $150
Religiosos $100
Literario $120
Artísticos $90
Oficial $70
Comercial $50

Datos que se piden al usuario:

Clasificación: 1
Vendedor: 3

Despliegue en pantalla:
El vendedor 3 ha vendido $2000 pesos de la clasificación Científicos

E. Calcular el costo total que se le paga a un vendedor

Los criterios son los siguientes:
El sueldo base de un vendedor es de $1500
Si vende de 2 a 5 libros se le da un bono de $100 pesos
Si vende de 6 a 10 libros se le da un bono de $300 pesos
Si vende de 11 o más libros se le da un bono de $1000 pesos

F. Salir.

Notas importantes:
Si se registran varias veces ventas para el mismo vendedor y la misma clasificación, cada nuevo registro se debe agregar al total de ventas que se encontraba registrado.
Por ejemplo, si se hace un registro de que el vendedor 1 vendió 3 libros de la clasificación 1, y luego se hace otro registro de que el vendedor 1 vendió 4 libros de la clasificación 1, la casilla correspondiente debe tener registrado un 7 (3 libros del primer registro y 4 del segundo).

Es necesario validar las opciones del menú, el número de clasificación, el número de vendedor y la cantidad de libros vendidos que se pidan al usuario; es decir, se debe pedir el dato y, si no es válido, se debe volver a pedir al usuario hasta que el usuario teclee el dato de manera correcta; las validaciones deben considerar los siguientes valores válidos:
Las opciones del menú válidas son a, b, c, d, e,f.
Los números de clasificación válidos son del 1 al 7.
Los números de vendedores válidos son de 1 al 10.
La cantidad de libros vendidos deben ser números positivos.
Se debe de validar que al momento de hacer una consulta el desplegado de la clasificación no debe de ser el número 1 al 7, si no el texto arriba mostrado para cada clasificación.

Si se pide una consulta, y aún no se ha registrado información de ventas para ese caso, el programa debe indicar que se han vendido 0 (cero) libros.
Al terminar de atender una opción, el programa debe regresar al menú y permitir que el usuario seleccione otra opción; el programa terminará sólo cuando se pida la opción Salir

Deberás especificar con comentarios en tu código fuente las instrucciones y los pasos en los cuales estás aplicando estos lineamientos

Espero que realmente alguien me pueda ayudar...saludos
  #2 (permalink)  
Antiguo 24/01/2012, 16:16
 
Fecha de Ingreso: diciembre-2011
Ubicación: CABA
Mensajes: 433
Antigüedad: 12 años, 10 meses
Puntos: 94
Respuesta: Proyecto final: libreria

Hola Angelito1281! el proyecto parece dificil pero leyendolo bien no es tan complicado, no conosco C++ solo se C :) pero t puedo ayudar un poco. Como la idea no es hacerte el codigo te doy algunas tips

Para generar la tabla de libros y vendedores te combiene usar una matriz, pero para que despues no estes sufriendo con el tema de los subindices te combiene declarar con un elemento mas tanto para filas y columnas, es decir
Código C:
Ver original
  1. int mat[8][11];
Esto luego te va a resolver la nota que dice "la tabla de datos de la librería utiliza las clasificaciones de 1 al 7 y los vendedores del 1 al 10...." ¿como lo resuelve? y cuando quieras ingresar algun subindice vas a podes usar del 1 al 10 (para columnas) y del 1 al 7 para filas, ¿que pasa con la posicion 0 0? solamente la ovbias.

Luego para la nota donde dice "si un vendedor no ha vendido nada, debe haber 0 en la casilla correspondiente...." solo basta con que inicialiaces cada subarreglo con cero

Para la parte del menu te recomiendo que utilices una funcion para cada opcion, funcion para A,B,C,D,E, F bueno para la F no es necesario :P, donde a cada funcion le pasas los datos que se le piden al usuario. Ejemplo para la funcion A(seudocodigo)
//en la llamada a la funcion
pedir datos al usuario
llamar a funcion y pasarle los datos del usuario que ingreso y ademas pasarle el arreglo

//en la funcion
recorrer arreglo segun los datos del usuario
registrar venta


Trata de plantear por lo menos hasta ahi, crea un menu, defini el arreglo e inicializalo, crea algunas funcion. Luego la parte de NOtas Importantes son solo detalles que mejoran el codigo
Trata de subir el codigo q tengas, espero habert ayudado

Saludos
  #3 (permalink)  
Antiguo 27/01/2012, 15:36
 
Fecha de Ingreso: enero-2012
Mensajes: 2
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Proyecto final: libreria

Muchas gracias Cesar!!!
En realidad con lo que mas estaba batallando era con identificar y comodar la matriz, lo que no entinedo es por que si segun la matriz es de 7*10, ¿tu le pusiste un digito demas 8*11??

Pero muchisisismas gracias de nuevo, me has sañvado la vida...aunq si batallo con identificar bien los codigos y el nombre de las funciones y eso, pero eso ya lo puedo consultr con un libro de C++ =)
  #4 (permalink)  
Antiguo 27/01/2012, 18:12
 
Fecha de Ingreso: diciembre-2011
Ubicación: CABA
Mensajes: 433
Antigüedad: 12 años, 10 meses
Puntos: 94
Respuesta: Proyecto final: libreria

Que bueno que estes bien en el proyecto :) ... Te comento porque lo hice de 8*11: si vos a tu matriz la declaras de 7*10 los subindices del array lo vas a manejar de 0 a 6 para las filas y de 0 a 9 para las columnas. Ahora supongamos que el usuario pide ver lo que vendio el vendedor 1 de la clasificacion 1(cientificos), en el array la posicion que pidio el usuario va a ser array[0][0] . Y aca es donde viene la ventaja del array 8*11, si la declaras de esta manera e ingresando los mismos datos que el usuario anterior vas a acceder en el array en la posicion array[1][1] directamente. La desventaja es que se crea una fila y una columna demas.
La matriz de 8*11 te lo dije por una cuestion de comodidad nada mas, declarada como 7*10 esta perfecto tambien

Espero se haya entendido algo :S

Saludos, suerte

Etiquetas: arrays, do-while, loops
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:51.