Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out

An�lisis

VIEWS: 74 PAGES: 8

									Universidad del Valle de Guatemala
Programación Orientada a Objetos
Proyecto No.1
Grupo H
Joseph Christopher Luttmann – 10048
Sandra Paola García – 10205
Luis Antonio Sigüenza – 10297

                    ANALISIS DEL PROBLEMA




  A. Entadas (Datos que el usuario ingresara):

         Opción que el usuario desee seleccionar del siguiente menú
          (1-4):
               1. Instrucciones
               2. Jugar
                     Coordenadas de la posición donde desee realizar
                        el movimiento.
                     Coordenadas donde se encuentre el objeto que
                        el usuario desee mover.
                     Si desea o no seguir jugando el usuario.
               3. Puntajes mayores
                     Nombre del usuario que obtuvo uno de los más
                        altos puntajes.
               4. Salir del Juego
B. Salidas (Mensajes que se van a mostrar en pantalla):

       Dentro del menú del juego, según la opción que el usuario
        ingrese, se desplegara lo siguiente:

              1. Instrucciones
                 Se mostrará una breve descripción de en qué consiste
                 el juego, con el fin que el jugador entienda
                 perfectamente el juego.

              2. Jugar
                 Al momento que el usuario empiece a jugar se
                 mostrara en pantalla:

                      Una matriz que contenga cada uno de los
                       objetos del juego. Cada vez que el jugador
                       ingrese las coordenadas del objeto que desea
                       mover y hacia donde, la matriz se modificará y
                       por lo tanto se mostrará la matriz modificada.

                      El puntaje acumulado que el jugador haya
                       alcanzado.

                      El nivel (fácil, medio, difícil) en que el jugador se
                       encuentre. Según la puntuación que haya
                       alcanzado.

                      Si el jugador ha alcanzado el puntaje debido
                       para pasar de un nivel a otro, se mostrará una
                       notificación del mismo. Así como una nueva
                       matriz que contenga los nuevos objetos del
                       juego.

              3. Puntajes Mayores
                 Se mostraran en pantalla los 3 puntajes más altos del
                 juego. Si el jugador ha logrado alcanzar un punteo
                 más alto que cualquiera de estos tres jugadores, se
                 pedirá el nombre del jugador y se colocara entre los
                 jugadores con punteos más altos en el juego
                 (tomando en cuenta que solo se tomaran los punteos
                 que se hayan alcanzado dentro de la ejecución del
                 juego. Si este sale del juego, se perderán todos los
                 datos de los punteos más altos.)

              4. Salida del Programa
                 Al momento que el usuario seleccione la opción de
                 salida del programa se mostrará en pantalla un
                 mensaje de despedida.

              5. Notificaciones (Programación defensiva)
                 Estas notificaciones más que todo son mensajes de
                 algún error que el usuario haya cometido. Serán
                 mostradas en pantalla si el usuario, realiza lo siguiente:

                        Ingresa una opción incorrecta.
                        Las coordenadas de un objeto o el
                         movimiento del mismo son incorrectas, ya
                         sea porque no son números enteros o las
                         coordenadas no existen.




C. Condiciones (Restricciones que tiene el problema):

       En el menú, solamente puede seleccionar entre las 4 opciones
        que posee el menú. Así mismo la opción ingresada tiene que
        ser un numero entero (1-4).
       Las coordenadas que el usuario ingrese deben de estar en el
        rango del tablero.
       Los movimientos de las letras únicamente pueden ser verticales
        y horizontales. Así mismo se pueden movilizar un espacio desde
        la posición donde se encuentren.
       El usuario terminará el juego hasta que él lo indique en el
        momento que el juego se lo pida o el seleccione la opción de
        salida.
D. Descripción de Ciclos:

       Menú principal del programa.
              Mientas que el usuario no ingrese la opción de salida (3)
               las opciones del menú estarán habilitadas.
       Solicitud de coordenadas.
              Ya iniciado el juego, se solicitaran las coordenadas de
               cada movimiento con respecto a una letra.
              Mientas que el usuario no solicite salir del juego, el mismo
               seguirá ejecutándose hasta que logre una victoria.

E. Programa principal – método main:
       Descripción del curso lógico (Algoritmo Narrativo)
         1. Se importa de la biblioteca de JAVA el paquete Scanner.
         2. Se declara la clase DriverFigura.
         3. Se inicia la ejecución del programa
               a. Se declara el método estático main.
               b. Se declaran las variables y objetos utilizados.
               c. A través de un ciclo se mostrará el menú de
                   opciones.
                        Se pedirá al usuario ingresar la opción que
                          desee.
                             1. Si la opción es Instrucciones:
                                    o Se mostrará en pantalla el método
                                       instrucciones().
                             2. Si la opción es Jugar.
                                    o Se mostrará en pantalla el tablero
                                       de juego.
                                    o Se pedirá al usuario el ingreso de la
                                       fila y columna de la letra que
                                       desea mover.
                                    o Se pedirá al usuario el ingreso de la
                                       fila y columna de la letra por la
                                       que desea hacer el cambio.
                                    o Se realizará el movimiento a través
                                       del método moverLetra().
                                    o Se preguntará al usuario si desea
                                       continuar con el juego.
                                                  Mientras que el usuario no
                                                   ingrese terminar juego, se
                                                   seguirá       realizando  el
                                                   proceso.
                                   3. Si la opción es Punteos Mayores:
                                          o Se mostrará en pantalla los
                                             nombres y resultados obtenidos de
                                             los 3 jugadores con los punteos
                                             más altos.
                                   4. Si la opción es Salir del Juego
                                          o Se mostrará en pantalla un
                                             mensaje de despedida.
                             Mientras que el usuario no ingrese la opción de
                               salida el menú se seguirá mostrando el mismo.
                4. Se declara el método estático menu().
                5. Se declara el método estático instrucciones().
                6. FIN.


   F. Descripción de cada clase:

           Clase : Figura

Tabla 1: Atributos de la clase Figura.

     Visibilidad                Tipo                Identificador        Observaciones

      privado                   Char                   letras           Se caracteriza por
                                                                         ser un arreglo de
                                                                         dos dimensiones.




Tabla 2: Métodos de la clase Figura.

  Visibilidad       Tipo de Retorno    Identificador       Parámetros       Funcionalidad

   publico                 -              Figura                    -      Constructor pre-
                                                                              definido.
                                                                             Inicializa el
                                                                               objeto,
   publico                -                 Figura            (int filas, int        Constructor
                                                              columnas)             personalizado.
                                                                                     Inicializa el
                                                                                       objeto.
                                                                                    OVERLOADING

   publico             String              toString                   -              Devolver el
                                                                                     estado del
                                                                                       objeto.

   publico              void             moverLetra          (int filap, int        Mover la letra
                                                            columnap, int             desde una
                                                               filam, int           coordenada a
                                                             columnam)                  otra.

   publico              char           seleccionarVocal               -            Seleccionar una
                                                                                     vocal en un
                                                                                        rango
                                                                                      específico.



           Clase : Usuario

Tabla 3: Atributos de la clase Usuario.

     Visibilidad                Tipo                  Identificador               Observaciones

      privado                   String                   nombre                    Nombre del
                                                                                    jugador.

      privado                    int                     punteo                  Punteo obtenido
                                                                                  por el jugador.

      privado                    int                     dinero                 Dinero obtenido en
                                                                                     el juego.




Tabla 4: Métodos de la clase Usuario.

  Visibilidad      Tipo de Retorno       Identificador       Parámetros             Funcionalidad

   publico                -                Usuario                    -            Constructor pre-
                                                                                      definido.
                                                                                     Inicializa el
                                                                                       objeto,
publico     -       Usuario       (String,        Constructor
                                nombre, int      personalizado.
                                punteo, int       Inicializa el
                                  dinero)           objeto.
                                                 OVERLOADING

publico   void     setNombre   (String nombre)     Modifica el
                                                    valor del
                                                    atributo
                                                  nombre, que
                                                  viene como
                                                   parámetro.

publico   void     setPunteo    (int punteo)        Modifica el
                                                     valor del
                                                 atributo punteo,
                                                     que viene
                                                       como
                                                    parámetro.

publico   void     setDinero     (int dinero)      Modifica el
                                                     valor del
                                                 atributo dinero,
                                                    que viene
                                                      como
                                                   parámetro.

publico   String   getNombre          -          Obtiene el valor
                                                  del atributo
                                                    nombre.

publico    int     getPunteo          -          Obtiene el valor
                                                  del atributo
                                                     punteo.

publico    Int     getDinero          -          Obtiene el valor
                                                  del atributo
                                                     dinero.

publico   String    toString          -            Devuelve el
                                                   estado del
                                                     objeto.
          Clase : DriverFigura

Tabla 5: Métodos de la clase Figura.

  Visibilidad   Tipo de Retorno   Identificador    Parámetros        Funcionalidad

   publico           void              main       (String args[ ])       Iniciar la
                                                                      ejecución del
                                                                       programa.

   publico           void              menu              -           Mostrar el menú
                                                                     de opciones al
                                                                        usuario.

   publico           void         instrucciones          -              Mostrar las
                                                                      instrucciones
                                                                       del juego al
                                                                         usuario.

								
To top