Vous êtes sur la page 1sur 4

IF-1300 INTRODUCCIN A LA COMPUTACIN E INFORMTICA

TAREA PROGRAMADA
Objetivo Gener!"
Aplicar los conocimientos adquiridos en el curso con el fin de demostrar las habilidades alcanzadas en
el rea de la programacin orientada a objetos.
De#$ri%$i&n 'e! %rob!e(
Para esta asignacin deben realizar un programa que se encargue de administrar las ventas de una
tienda local. Deber presentar un men con las siguientes opciones:
acturar una compra: deber solicitar los datos del cliente ! luego los datos de un producto.
Posteriormente deber consultar si desea agregar ms productos a la compra hasta que el
usuario decida no agregar ms productos o se llegue al m"imo de productos permitidos en una
compra# que en este caso ser $. %uando finaliza deber mostrar la lista de productos ! el total a
pagar.
&ostrar compras de un cliente: se deber ingresar la c'dula del cliente ! se mostrar en pantalla
una lista con las compras que pertenecen a ese cliente.
(alir: terminar el programa.
A#%e$to# 'e i(%!e(ent$i&n
)a aplicacin debe realizarse con el lenguaje de programacin *ava# utilizando Dr.*ava
Para crear un cliente deber solicitar c'dula# nombre# primer apellido ! segundo apellido.
Deber validar que ninguno de los datos venga vac+o. ,n caso de que alguno de los datos
ingresados sea vac+o deber generar un mensaje de error al usuario ! volver a preguntar los
datos del cliente.
Para crear un producto deber solicitar: nombre# precio ! cantidad a comprar. (e debe validar
lo mismo que para el cliente ! de igual forma volver a preguntar en caso de fallo.
Para crear una factura de compra deber solicitar la fecha# un cliente ! al menos un producto#
luego proceder a preguntar si desea crear otro producto# en cu!o caso volver a solicitar los
datos de un producto. -na factura tiene $ productos.m"imo/# pero se puede crear facturas de
compra con menos productos ! no utilizar los restantes.
,s sistema maneja un m"imo de 0 facturas de compra. ,n el caso de que !a se ha!an ingresado
el m"imo de facturas cuando el usuario seleccione la primera opcin del men deber mostrar
un mensaje que indique que no se puede ingresar ms facturas.
Para la opcin de las compras de un cliente# deber buscar en las facturas si la c'dula del cliente
de alguna o varias de las facturas corresponde a la c'dula ingresada# en cu!o caso mostrar la o
las facturas que correspondan. (i no encuentra ninguna deber mostrar un mensaje de que no se
ha encontrado ninguna compra para ese cliente. (i no se ha ingresado ninguna compra deber
mostrar un mensaje de que no puede realizar la bsqueda por que no ha! facturas. Deber
validar que la c'dula ingresada no sea vac+a en cu!o caso deber mostrar un mensaje de error !
volver a preguntarla.
Para el manejo de la fecha de la factura deber investigar el funcionamiento de la clase Date#
%alendar o 1regorian%alendar. 2o puede utilizar m'todos obsoletos .deprecated/.
,n el men en caso de que se d' una opcin invlida deber desplegar un mensaje al usuario
indicndole su error ! luego volver a desplegar el men. (i el usuario del programa digita una
opcin diferente a salir# una vez terminada su accin correspondiente deber volver a desplegar
el men.
,l programa no debe controlar que el usuario digite letras cuando deb+a digitar nmeros ni
viceversa.
Pr e#t tre no e#t) %er(iti'o e! *#o 'e ve$tore# ni nin+,n ti%o 'e e#tr*$t*r 'e 'to#
#i(i!r- Debe (nejr objeto# in'ivi'*!e#-
,l programa debe contar al menos con las siguientes clases:
Ge#torIO" (e encarga de la solicitud ! despliegue de informacin al usuario. Para esto debe
utilizarse la clase *3ptionPane. 4odos los m'todos tanto de solicitud como de despliegue
deben recibir el mensaje que ser desplegado en la ventana *3ptionPane. Algunos de los
m'todos pueden ser: solicitar(tring# solicitar5nt# solicitar%har# solicitarDouble#
desplegar(tring# entre otros. (olamente en esta clase se har uso de *3ptionPane.
Men," se encarga de desplegar el men mencionado ! de interactuar con las dems clases.
C!iente" Debe tener los atributos del cliente# m'todo constructor.con parmetros/# los set !
get ! el to(tring.
Pro'*$to" Debe tener los atributos del producto# m'todo constructor.con parmetros/# los
set ! get# el to(tring ! un m'todo para calcular el costo del producto tomando en cuenta su
precio ! la cantidad a comprar del mismo.
F$t*rCo(%r" Debe tener los atributos de la factura# los set ! get# el to(tring ! el
m'todo para calcular el total de la compra# correspondiente al costo de todos los productos
ingresados a la factura. Deber tener un solo constructor que reciba el cliente ! el primer
producto.
Mnej'orF$t*r#: Debe tener las 0 facturas. Deber tener un m'todo para recibir un
objeto actura%ompra ! asignarlo al objeto actura%ompra correspondiente que no ha!a
sido asignado .se encuentre en null/. 4ambi'n deber tener un m'todo en el cual se reciba
una c'dula ! se devuelva una hilera de te"to con las facturas que tengan un cliente con la
c'dula recibida. 4ome en cuenta que deber buscar slo en las facturas que han sido creadas.
Cre'orObjeto#" Debe tener los m'todos para crear los objetos de las clases anteriores.
Para la factura el objeto creado debe tener todos los productos ingresados# no slo el
primero.
Min" contiene el m'todo main en el cual nicamente se hace un llamado a desplegar el
men de la clase &en.
A#%e$to# 'e ev!*$i&n"
,l valor porcentual de la tarea es 6$7.
)a tarea deber ser realizada en grupos de 8 personas .sin e"cepcin/.
)a entrega deber tener el siguiente formato: un nico archivo comprimido .zip identificado con
el carn' de los estudiantes# que contiene una nica carpeta con los archivos .java de su tarea.
Adems# deber venir un archivo llamado 9,AD&,.t"t en el cual se debe incluir: -niversidad#
carrera# curso# asignacin# profesor# carn' ! nombre de los estudiantes# fecha de entrega de la
tarea. ,s responsabilidad del estudiante verificar que vengan los archivos .java# si slo vienen
los .class o :.java los mismos no sern revisados. Deber ser entregado en el sitio del curso.
,s responsabilidad de los estudiantes mantener en todo momento una versin de la aplicacin
que compile sin errores. ,l resultado entregado debe cumplir con esta caracter+stica# de lo
contrario ser calificada con nota ; la tarea programada.
4odas los grupos presentarn su trabajo el d+a ;<=*ulio=8;60 hasta las 68:;; pm .medio d+a/. ,n
caso de que se atrase un d+a.despu's de las 68:;; pm/# perdern el 0;7 del valor del trabajo !
en caso de que no sean entregados en esos d+as perdern todo el puntaje.
)a totalidad de la nota estar sujeta a la defensa del cdigo fuente por parte de los miembros del
grupo en las fechas establecidas por el profesor.a/ en los 8 d+as posteriores a la entrega. %ada
estudiante debe tener conocimiento de la totalidad de la tarea. ,n caso de que alguno de los
miembros no responda adecuadamente a lo solicitado por el profesor esto afectar su nota
individual .>;7/ ! un porcentaje del trabajo grupal .6;7/. (e programaran las citas pertinentes.
2o se aceptan consultas de ningn tipo a partir del momento en que queden ? d+as para la fecha
de entrega .contando el d+a de entrega/.
2o est permitido tomar cdigo con soluciones a problemas bajadas de 5nternet o copiadas de
otro grupo o compa@ero# en tal caso la nota de las tareas de los involucrados ser
automticamente de ; ! se tomarn las medidas disciplinarias del caso.
(i un grupo decide separarse debe primero hablar con el profesor para dialogar sobre la
situacin. ,l profesor es qui'n decide si el grupo se separa e indicar el proceso de separacin. (i
un miembro de un grupo se separa no puede juntarse a otro grupo. 2o se permite entregar dos
tareas por separado para un grupo que no ha pedido al profesor separarse# en este caso no se
recibe ninguna de las dos tareas programadas realizadas individualmente# ! la nota de la tarea
programada es cero.
Ev!*$i&n"
%reacin ! uso de las siguientes clases:
&ain: 6 pt.
1estor53: 0 pts.
%liente: $ pts.
Producto: < pts.
actura%ompra: 6A pts
&anejadoracturas: 8$ pts
%reador3bjetos: 8; pts
&en: 8; pts.
Conven$ione# 'e %ro+r($i&n
,l programa debe contar con al menos las siguientes convenciones de programacin ! sern evaluadas
dentro de cada uno de los rubros de evaluacin mencionados anteriormente .Para referencia consular el
manual de buenas prctica entregado por el profesor.a//:
2ombres de clases iniciando en ma!scula ! representativo. Por ejemplo: ,studiante.
2ombres de variables ! m'todos en minscula. Por ejemplo: saldoDe%uenta# cobrar./
2ombres de constantes en ma!scula. Por ejemplo: %A245DADB&AC5&ABD,B-(-A953(.
2ombres significativos. Por ejemplo: saldo%uenta%orriente# en lugar de la palabra dinero.
5niciar cada palabra significativa con ma!scula cuando se tengan nombres compuestos por
varias palabras .e"cepto la primera/# o separados por el carcter DBE en caso de constantes. Por
ejemplo: saldoDe%uenta%orriente o bien %A245DADB&AC5&ABD,B-(-A953(.
5dentacin de forma adecuada ! legible: Alineamiento apropiado entre las l+neas de cdigo que
se encuentran a cada nivel de anidamiento. .Algunos se refieren a esto como 4abulacin/.
,spaciado adecuado entre llaves# operadores# par'ntesis ! m'todos.
(eparacin de declaraciones de variables en diferentes l+neas cada una.
-so correcto de constantes .final/.
-so correcto de los modificadores de acceso public# private# etc.
Despliegue adecuado de hileras ! ortograf+a en las mismas.
-so de modularizacin en el programa.

Vous aimerez peut-être aussi