proyecto de programacion

4
ESCUELA SUPERIOR POLITÉCNICA DEL LITORAL FACULTAD DE INGENIERIA EN ELECTRICIDAD Y COMPUTACION PROYECTO PRIMERA EVALUACIÓN - FUNDAMENTOS DE PROGRAMACIÓN P1 ING. CRUZ MARÍA FALCONES, MSC. FECHA DE ENTREGA: 13/12/2015, HORA 23:55 Objetivos: Poner en Práctica los conocimientos adquiridos en clases en la Primera Evaluación, relacionados a sentencias de control, números aleatorios, validaciones, funciones y colecciones. Evaluar la iniciativa para la resolución de problemas Dominar el uso básico de la herramienta de desarrollo Evaluar documentación interna del código Evaluación del Proyecto El proyecto será evaluado considerando los siguientes aspectos: Documentación del código: No se evaluará la cantidad de los comentarios sino la calidad y el formato de los mismos. Cualquier consideración adicional a lo establecido como parte del proyecto deberá estar adecuadamente documentado en el código. Estructuración del código: Adecuado uso de las instrucciones de control, tipos de datos y constantes. Nombres de variables y validaciones apropiadas, indentación del código para facilitar la lectura, declaración de variables al inicio del programa o al inicio de las funciones (según corresponda), entre otros aspectos indicados en clases. Aplicación del paradigma “Dividir y Conquistar”: Esto evalúa una adecuada declaración, implementación y uso de funciones. Es obligatorio implementar varias funciones que simplifiquen el desarrollo del proyecto, siguiendo las normas de Programación Estructurada. Completitud: El programa deberá estar totalmente terminado para ser evaluado. No debe presentar un comportamiento no esperado (se deben validar los ingresos por teclado). Entrega a tiempo: El código fuente y una captura de pantalla de la ejecución del programa, deberán ser entregados en una carpeta con el NOMBRE_APELLIDO de cada miembro del grupo, en un archivo comprimido (.rar, .zip) a través del SIDWEB, hasta la fecha y hora máxima de entrega. Valor Agregado El valor agregado corresponde a todo aquello que no es solicitado pero de alguna manera contribuye a una mejor implementación del proyecto. Por ejemplo, es considerado como valor agregado una Agradable presentación del Proyecto; consideren que no es necesario disponer de gráficos para que la presentación por pantalla sea agradable. Recuerden que esto es posible a través de un adecuado formato de salida, por lo tanto ¡sean creativos! Sustentación y Calificación La fecha máxima de entrega del proyecto es el domingo 13 de diciembre de 2015 a las 23:55, en el Sidweb. La sustentación se realizará el día miércoles 16 de diciembre de 2015 a las 10:30 en el Laboratorio 7 (COM2). La sustentación del proyecto corresponde a un factor (de 0 a 1) que multiplica la calificación del proyecto.

Upload: diego-robalino

Post on 16-Feb-2016

3 views

Category:

Documents


0 download

DESCRIPTION

programacion en python

TRANSCRIPT

Page 1: proyecto de programacion

ESCUELA SUPERIOR POLITÉCNICA DEL LITORAL FACULTAD DE INGENIERIA EN ELECTRICIDAD Y COMPUTACION

PROYECTO PRIMERA EVALUACIÓN - FUNDAMENTOS DE PROGRAMACIÓN P1

ING. CRUZ MARÍA FALCONES, MSC.

FECHA DE ENTREGA: 13/12/2015, HORA 23:55

Objetivos: Poner en Práctica los conocimientos adquiridos en clases en la Primera Evaluación,

relacionados a sentencias de control, números aleatorios, validaciones, funciones y colecciones.

Evaluar la iniciativa para la resolución de problemas Dominar el uso básico de la herramienta de desarrollo

Evaluar documentación interna del código

Evaluación del Proyecto El proyecto será evaluado considerando los siguientes aspectos:

Documentación del código: No se evaluará la cantidad de los comentarios sino la calidad y

el formato de los mismos. Cualquier consideración adicional a lo establecido como parte del

proyecto deberá estar adecuadamente documentado en el código. Estructuración del código: Adecuado uso de las instrucciones de control, tipos de datos y

constantes. Nombres de variables y validaciones apropiadas, indentación del código para facilitar la lectura, declaración de variables al inicio del programa o al inicio de las funciones

(según corresponda), entre otros aspectos indicados en clases.

Aplicación del paradigma “Dividir y Conquistar”: Esto evalúa una adecuada declaración,

implementación y uso de funciones. Es obligatorio implementar varias funciones que

simplifiquen el desarrollo del proyecto, siguiendo las normas de Programación Estructurada.

Completitud: El programa deberá estar totalmente terminado para ser evaluado. No debe

presentar un comportamiento no esperado (se deben validar los ingresos por teclado).

Entrega a tiempo: El código fuente y una captura de pantalla de la ejecución del programa,

deberán ser entregados en una carpeta con el NOMBRE_APELLIDO de cada miembro del grupo, en un archivo comprimido (.rar, .zip) a través del SIDWEB, hasta la fecha y hora

máxima de entrega.

Valor Agregado El valor agregado corresponde a todo aquello que no es solicitado pero de alguna manera contribuye a una mejor implementación del proyecto.

Por ejemplo, es considerado como valor agregado una Agradable presentación del Proyecto; consideren que no es necesario disponer de gráficos para que la presentación por pantalla sea

agradable. Recuerden que esto es posible a través de un adecuado formato de salida, por lo tanto

¡sean creativos!

Sustentación y Calificación La fecha máxima de entrega del proyecto es el domingo 13 de diciembre de 2015 a las

23:55, en el Sidweb.

La sustentación se realizará el día miércoles 16 de diciembre de 2015 a las 10:30 en el

Laboratorio 7 (COM2).

La sustentación del proyecto corresponde a un factor (de 0 a 1) que multiplica la calificación del

proyecto.

Page 2: proyecto de programacion

Juego Cuadros Amigos

Consiste en eliminar los cuadros adyacentes que contengan el mismo número (cuadros amigos),

de una cinta de 20 posiciones. Se considerarán como cuadros adyacentes los que están a la derecha e izquierda. Los cuadros o posiciones de la cinta son llenados con números entre uno y

cuatro (1 y 4) y están colocados en forma aleatoria.

Dependiendo del número de cuadros que se eliminen, se asignará un puntaje que se acumulará

para establecer un nuevo récord en cada juego. El jugador puede finalizar cuando ya no hay más cuadros amigos, o si ve que el tablero no le favorece para establecer un nuevo récord (puede

descartar el juego e iniciar uno nuevo).

Desarrollo del Juego

1. Se muestra la cinta y se solicita al jugador ingresar la posición del cuadro que desea eliminar,

o la finalización del juego.

2. Si en la posición indicada el cuadro no tiene ningún amigo (números iguales adyacentes) no

sucede nada y se vuelve a solicitar ingresar la posición.

3. Si la posición solicitada tiene cuadros amigos, éstos se eliminan de la cinta, y sus posiciones

son ocupadas por el desplazamiento de los cuadros que se encuentren a su derecha (a

medida que se eliminan cuadros amigos los números que quedan se van agrupando hacia la

izquierda). Los cuadros que quedan vacíos al final de la cinta se representan con ceros.

4. Según el número de cuadros amigos que se eliminaron, se asigna el siguiente puntaje:

5. Se repiten los pasos 1 al 3 para continuar jugando y el puntaje se va acumulando hasta que

ya no queden cuadros amigos en la cinta (la cual lucirá casi vacía pues muchos serán ceros).

Podrían quedar cuadros con números iguales, pero si no están adyacentes no podrán

eliminarse, y entonces termina el juego ingresando -1.

6. Si el puntaje final es mayor que el record establecido hasta el momento, éste se actualiza y el

programa regresa al menú principal.

Salida del programa

Al iniciar el programa se debe mostrar en pantalla un menú con las siguientes opciones:

1. Nuevo Juego

2. Mostrar Récord

3. Acerca de…

4. Salir

Cuadros Puntos

2 2

3 4

4 8

5 14

6 22

7 32

8 44

9 58

10 o más 74

Page 3: proyecto de programacion

“Nuevo Juego”, lleva a cabo el Desarrollo del Juego mostrando la cinta inicial y

solicitando al jugador la opción de seguir o parar. Muestra cada etapa del juego hasta que

se finalice.

“Mostrar Récord”, debe presentar en pantalla el mayor puntaje obtenido en el juego.

“Acerca de…” muestra una breve descripción del proyecto, los nombres de los autores

(integrantes del grupo), y fecha.

“Salir”, para terminar la ejecución del programa, mostrando un agradecimiento final al

usuario.

Ejemplo de posible salida (secuencia de pantallas, una a la vez) del programa:

Cinta inicial

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Jugador escoge la posición 14, se eliminan 2 cuadros amigos con el número 1 y se ganan 2 puntos

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Jugador escoge la posición 12, se eliminan 4 cuadros amigos con el número 4 y gana 8 puntos más

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

El jugador decide terminar el juego con -1 y su puntaje final es de 10.

1 4 3 3 2 3 4 2 2 2 1 4 4 4 1 1 4 1 3 2

1 4 3 3 2 3 4 2 2 2 1 4 4 4 4 1 3 2 0 0

1 4 3 3 2 3 4 2 2 2 1 1 3 2 0 0 0 0 0 0

Page 4: proyecto de programacion

Rúbrica de Calificación

Descripción Valor

Documentación del código fuente (comentarios) 1

Sangría del código fuente 1

Nombres significativos para variables y funciones 1

Funcionamiento y validación del Menú 2

Opción Acerca de… 2

Generar y colocar los números aleatorios 2

Solicitar y validar números 2

Verificar números amigos 4

Actualizar la cinta con el desplazamiento y ceros 5

Registro del puntaje récord 2

Salida de pantalla con la información requerida 2

Información fin juego 1

TOTAL 25

Creatividad en la presentación +2

Opciones extra a lo solicitado +2

No cargado al SidWeb en un solo archivo -2

No incluye captura de pantalla -2

No colocar nombre correcto a los archivos -2

El programa no funciona -25

Entrega fuera de tiempo -25