Clases a Implementar (Paquete xklotski): 1. Clase XKlotskiException: package xklotski;

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Clases a Implementar (Paquete xklotski): 1. Clase XKlotskiException: package xklotski;"

Transcripción

1 Profesores: Jorge Escalona / Tobías Bolívar Página 1 de 5 Estructura de Datos Proyecto Final (25%) Introducción: Klotski es un juego rompecabezas para un sólo jugador. El juego se compone de un tablero ocupado por piezas y muros, y el objetivo del juego es desplazar una de las piezas de su posición inicial a una posición objetivo. Klotski es una generalización de un juego de piezas de madera de origen incierto, llamado en francés L âne rouge. Parece que la primera versión informática del juego fue para Windows 3.1. En la actualidad, hay una versión para Linux llamada Gnome Klotski o gnotski (hay otra llamada glotski que no es exactamente igual a la que pedimos) y otra escrita en python que funciona en Linux y Windows, disponible en En la siguiente figura se muestra una imagen con la implementación del juego. Requisitos 1. El juego se compone de varios niveles, y en cada nivel habrá un tablero diferente. 2. El tablero está dividido en cuadrados, de modo que cada elemento que contiene ocupa uno o varios cuadrados contiguos (no se consideran contiguos cuadrados que se toquen en un único punto). 3. Los diferentes elementos del tablero son: Piezas Una pieza singular Muros Puertas Posición objetivo 4. La pieza singular encajará completamente en la posición objetivo. 5. Las piezas (y sólo ellas) se pueden desplazar por el tablero, horizontal o verticalmente, pero no pueden moverse por encima de otras piezas o de muros. Cualquier pieza puede moverse o colocarse encima de la posición objetivo. Únicamente la pieza singular puede moverse o colocarse encima de las puertas. 6. El programa leerá cada descripción de nivel de un fichero de texto. El fichero para el nivel N se llamará nivel_n.txt. 7. El formato de un fichero de nivel es el siguiente:

2 Profesores: Jorge Escalona / Tobías Bolívar Página 2 de 5 La primera línea es el nombre del nivel. El nombre contendrá como mucho 40 caracteres. La segunda línea contiene dos números naturales, el primero es el ancho del tablero en cuadrados, y el segundo la altura del tablero en cuadrados. En principio no hay límite en ambos números, excepto que puedan representarse como un entero del lenguaje de programación. Las siguientes líneas, tantas como la altura del tablero en cuadrados, representarán el tablero. En cada línea, cada carácter representará qué elemento ocupa el cuadrado correspondiente del tablero (por tanto, en el tablero inicial no puede haber elementos solapados). Los diferentes elementos se representan de la siguiente forma: o Pieza singular: * o Resto de las piezas: a - z (Letra minúscula ASCII) o Muro: # o Puerta: - o Posición objetivo:. o Cuadrado vacío: o & (espacio en blanco) Si una pieza está definida por caracteres que no ocupan cuadrados conexos, el programa deberá detectarlo y dar un mensaje de error adecuado. Si una línea contiene menos caracteres que el ancho del tablero, se considerará que los cuadrados no representados están vacíos. Un ejemplo de archivo, que representa el nivel de la figura 1, es el siguiente: Forget me not (ane rouge) &&&&&&&&&& &&&&&&&&&& &&######&& &&#a**b#&& &&#a**b#&& &&#cdde#&& &&#cfge#&& &&#a&&b#&& &&##--##&& &&&&&&&&.. &&&&&&&&.. 8. Podrán añadirse nuevos niveles al juego incorporando nuevos archivos de nivel, sin necesidad de recompilar el programa. En todo caso, se puede suponer que la numeración de los niveles es consecutiva. 9. La pantalla del juego contendrá al menos: El tablero El nombre del nivel El número de movimientos hecho hasta el momento Los botones o menús necesarios 10. Las piezas y los muros se representarán de modo que aparezcan conexos, inclusive si ocupan varios cuadrados del tablero. 11. Todas las piezas, excepto la singular, se representarán de la misma forma. 12. Cada pieza diferente que se mueve se considera un movimiento. Al mover una pieza que acaba de ser movida se considera que es una continuación del movimiento anterior, y no cuenta como movimiento. 13. Si la pieza que se está moviendo se vuelve a colocar en la posición donde estaba cuando se comenzó el movimiento actual (que puede haber tenido varios sub-movimientos), se considerará que este movimiento no ha existido, y se decrementará por tanto el contador de movimientos. 14. La puntuación, en cada nivel, es el número de movimientos realizados para llevar la pieza singular de su posición inicial a la posición objetivo. La mejor puntuación, obviamente, es la más baja. 15. El programa, al iniciar, cargará el nivel que se estaba resolviendo la última vez que se utilizó el programa, tal y como lo dejó el jugador, y se mostrará en la pantalla. Si es la primera vez que se ejecuta el programa, se cargará el nivel 1.

3 Profesores: Jorge Escalona / Tobías Bolívar Página 3 de Cómo se mueven las piezas queda a discreción de los alumnos, puede ser mediante el ratón o el teclado, apareciendo o no una pieza seleccionada, etc. En todo caso, el procedimiento tiene que ser intuitivo y no debe basarse en la representación interna de las piezas. 17. Se permitirá deshacer el último movimiento realizado, y sucesivamente los anteriores. Para ello el programa deberá memorizar todos los movimientos realizados desde el comienzo del nivel. De esta manera, mediante sucesivos deshaceres, debería ser posible retornar al estado inicial del nivel que se está resolviendo. Esto último debe ser posible aunque se haya cargado un nivel que se había dejado a medias la última vez que se utilizó el programa. 18. El nivel se considerará completo cuando la pieza singular esté en la posición objetivo. El programa debe detectar esto automáticamente. 19. El programa mantendrá un registro de los 10 mejores records de cada nivel. 20. Existirán al menos botones o menús para: Proporcionar instrucciones del juego Mostrar los créditos del juego (quién lo ha hecho) Cambiar a otros niveles del juego Reiniciar el nivel Deshacer movimientos Mostrar records del nivel actual. Salir (preguntará si se quiere salvar el juego) Clases a Implementar (Paquete xklotski): 1. Clase XKlotskiException: public class XKlotskiException extends Exception{ public XKlotskiException (); public XKlotskiException (String msg){ super(msg); 2. Clase XJugador: public class XJugador { private String nombre; private int nivel_actual; private int nro_mov; private java.util.list movs_nivel; public XJugador(); //metodos getters y setters 3. Clase XPieza: Public clase XPieza{ private int id_pieza; private int tipo_pieza; //0: Pieza singular;1:resto de las piezas; 2:Muro;3:Puerta;4:Posición objetivo; // 5: Cuadrado vacío public XPieza( ); //métodos getters y setters

4 Profesores: Jorge Escalona / Tobías Bolívar Página 4 de 5 4. Clase XKlotski //imports public class XKlotski { //atributos //constructores public XKlotski (); //crea una instancia de la clase inicializando las estructuras necesarias para el control del juego //métodos public void cargarjuego(string nombrearchivo) throws XKlotskiException; //carga un nuevo juego desde el archivo indicado como parámetro //genera una excepción si hay algún error cargando el archivo public void guardarjuego(xjugador jugadoractual) throws XKlotskiException; //guarda la información del juego actualn en el archivo del jugador actual //genera una excepción si hay algún error guardando el archivo public int moverpieza(xpieza pieza, char direccion) throws XKlotskiException; //mueve una pieza en la dirección indicada como parámetro: // i: izquierda // d: derecha // a: arriba // b; abajo // devuelve 0 si la jugada se realizó con éxito // devuelve 1 si la jugada completa el juego //genera una excepción si la pieza o el movimiento es inválido public int contadormovimientos(); //devuelve el numero de movimientos realizados por el jugador en el juego actual public java.util.list recordsnivel(int nivel) throws XKlotskiException; //devuelve una lista con los records del nivel actual //genera una excepción si hay algún error public int esnuevorecord(int nivel, int cantmovidas) //devuelve un número entero entre 1 y 10 si la cantidad de movimientos //está entre los diez mejores records //si no devuelve 0 public void guardarnuevorecord(int nivel, String jugador, int cantmovidas) throws XKlotskiException //guarda el Nuevo record en el archive de records de cada nivel //genera una excepción si hay algún error public XMatriz matrizjuego()throws XKlotskiException; //devuelve una instancia de la clase XMatriz //conteniendo en cada celda la información de la pieza o espacio que hay en ella.

5 Profesores: Jorge Escalona / Tobías Bolívar Página 5 de 5 Por último, debe implementar una clase denominada Klotski_App que permita probar cada una de las características del juego. La interfaz de esta aplicación puede ser en forma gráfica u orientada a caracteres según su conveniencia. Entrega #1: Semana 10 Paquete xklotski con todos sus módulos y dependencias implementadas. Entrega #2: Semana 15 Aplicación Klotski_App Informe Final del Proyecto Nota: El Informe del Programa debe estar conformado por: Portada. Indice. Introducción. Planteamiento del Problema. Diagrama de Clases Estrategias de Resolución de Problemas. Consideraciones y/o Restricciones.

PARTE TEÓRICA - TEST [2,5 PUNTOS]:

PARTE TEÓRICA - TEST [2,5 PUNTOS]: UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA 71901072 PROGRAMACIÓN ORIENTADA A OBJETOS (GRADO EN INGENIERÍA INFORMÁTICA / TECNOLOGÍAS DE LA INFORMACIÓN)

Más detalles

Examen de Fundamentos de Computadores y Lenguajes

Examen de Fundamentos de Computadores y Lenguajes Examen de Fundamentos de Computadores y Lenguajes Cuestiones (5 cuestiones, 5 puntos en total) Examen Parcial. Junio 2004 1) Se desea crear una clase para hacer cálculos sobre el movimiento de un cuerpo

Más detalles

Examen escrito de Programación 1

Examen escrito de Programación 1 Examen escrito de Programación 1 Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas 31 de agosto de 2012 Disponer sobre la mesa en lugar visible un documento de identificación

Más detalles

Cambia al área de trabajo situada debajo de la actual.

Cambia al área de trabajo situada debajo de la actual. 1 Casi todas las tareas que se pueden realizar con el mouse se pueden también realizar con el teclado. Las teclas de acceso directo proporcionan un método rápido para realizar una tarea. Se pueden utilizar

Más detalles

Soluciones al Examen de Fundamentos de Computadores y Lenguajes

Soluciones al Examen de Fundamentos de Computadores y Lenguajes Soluciones al Examen de Fundamentos de Computadores y Lenguajes Cuestiones (5 cuestiones, 5 puntos en total) Examen Parcial. Junio 2004 1) Se desea crear una clase para hacer cálculos sobre el movimiento

Más detalles

Universidad de los Andes Ingeniería de Sistemas y Computación

Universidad de los Andes Ingeniería de Sistemas y Computación Universidad de los Andes Ingeniería de Sistemas y Computación ISIS1205 - Algorítmica y Programación por Objetos II 2006-1 Hoja de Trabajo sobre los menus El objetivo de este taller es aprender a utilizar

Más detalles

Examen de Programación (Grados en Física y Matemáticas)

Examen de Programación (Grados en Física y Matemáticas) Examen de Programación (Grados en Física y Matemáticas) Junio 2012 Primera parte (5 puntos, 50% nota del examen) 1) Escribir en Java el método posicion(), que retorna el valor correspondiente a la expresión

Más detalles

Conocimientos previos

Conocimientos previos Tema: Entendiendo un programa JAVA, lectura/ escritura y depuración Ficha de Aprendizaje 10 n Logro Conoce la programación orientada a objetos y sus posibilidades. Conoce el término clases, sus partes

Más detalles

Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Programación de Computadores Proyecto de curso,

Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Programación de Computadores Proyecto de curso, Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Programación de Computadores Proyecto de curso, 2016-30 Introducción Solitaire Chess es un juego de lógica y estrategia producido

Más detalles

Titulación: Ingeniero Técnico en Informática de Gestión Curso: 2º

Titulación: Ingeniero Técnico en Informática de Gestión Curso: 2º 1. Ejercicio (3 puntos) Dado una lista L, cuyo contenido son números enteros y están ordenados en orden ascendente, escribir en Java un programa óptimo que crea y devuelve dos listas: una de pares y otra

Más detalles

Nuevas tecnologías de la programación Práctica 3: Juego del comecocos en Java (curso )

Nuevas tecnologías de la programación Práctica 3: Juego del comecocos en Java (curso ) Nuevas tecnologías de la programación Práctica 3: Juego del comecocos en Java (curso 2011-2012) Descripción La práctica consiste en la implementación en Java utilizando el kit de desarrollo j2sdk (se recomienda

Más detalles

Unidad V. Ya veremos qué poner en "algunas_palabras" y "algo_más", por ahora sigamos un poco más.

Unidad V. Ya veremos qué poner en algunas_palabras y algo_más, por ahora sigamos un poco más. Implementación Orientada a Objetos. Unidad V 5.1 Estructura de una clase. Una clase consiste en: algunas_palabras class nombre_de_la_clase [algo_más] { [lista_de_atributos] [lista_de_métodos] Lo que está

Más detalles

Grado en Ingeniería Informática. Estructura de Datos y Algoritmos, Grupo 84M, 2014/ de Marzo de

Grado en Ingeniería Informática. Estructura de Datos y Algoritmos, Grupo 84M, 2014/ de Marzo de Grado en Ingeniería Informática Estructura de Datos y Algoritmos, Grupo 84M, 2014/2015 12 de Marzo de 2015 Nombre y Apellidos:... PROBLEMA 1 (1 punto) Programación Orientada a Objetos. Una empresa de alquiler

Más detalles

Soluciones del Examen de Fundamentos de Computadores y Lenguajes

Soluciones del Examen de Fundamentos de Computadores y Lenguajes Soluciones del Examen de Fundamentos de Computadores y Lenguajes Cuestiones (5 cuestiones, 5 puntos en total) Examen Final. Junio 2003 1) Escribir un fragmento de programa que haga lo siguiente Declara

Más detalles

RELACIÒN ENTRE LA PROGRAMACIÒN ORIENTADA A OBJETOS Y LA ESTRUCTURADA

RELACIÒN ENTRE LA PROGRAMACIÒN ORIENTADA A OBJETOS Y LA ESTRUCTURADA RELACIÒN ENTRE LA PROGRAMACIÒN ORIENTADA A OBJETOS Y LA ESTRUCTURADA La Programación Orientada a Objetos toma las mejores ideas de la programación estructurada la combina con nuevos y poderosos conceptos

Más detalles

CAPÍTULO 4 MANUAL DE USUARIO. 4.1 Introducción. 4.2 Interfaz de Usuario

CAPÍTULO 4 MANUAL DE USUARIO. 4.1 Introducción. 4.2 Interfaz de Usuario CAPÍTULO 4 MANUAL DE USUARIO 4.1 Introducción En este capítulo se describirá de forma detallada el funcionamiento de la aplicación. La aplicación global genera tres tipos de teselaciones periódicas del

Más detalles

Práctica Nº 4 Entrada / Salida

Práctica Nº 4 Entrada / Salida Facultad de Ciencias Exactas, Ingeniería y Agrimensura Departamento de Sistemas e Informática Escuela de Electrónica Informática II Práctica Nº 4 Entrada / Salida Problema 1: (C++) Escriba un programa

Más detalles

Botones de la Barra de Herramientas / Otros botones

Botones de la Barra de Herramientas / Otros botones Botones de la Barra de Herramientas / Otros botones Nuevo registro Guardar información La pantalla se limpiará de datos de registros anteriores y se estará en disposición de comenzar a meter la información

Más detalles

MANUAL DEL PROGRAMA DE CÁLCULO DE BATERÍAS Y LAZO

MANUAL DEL PROGRAMA DE CÁLCULO DE BATERÍAS Y LAZO MANUAL DEL PROGRAMA DE CÁLCULO DE BATERÍAS Y LAZO Con este software es posible hacer: Calcular la capacidad de las baterías para un sistema de detección de incendios KOMTTECH Configurar la capacidad de

Más detalles

Microsoft Excel. Manejo de Software para Microcomputadoras

Microsoft Excel. Manejo de Software para Microcomputadoras Microsoft Excel Manejo de Software para Microcomputadoras Como comenzó todo? Lotus 1-2-3... La competencia principal iba a ser Lotus 1-2-3, el cual creció hasta convertirse en líder del mercado. No obstante,

Más detalles

EJEMPLO DE PARTIDA. Pongo en la casilla: 4 El tablero queda como: X

EJEMPLO DE PARTIDA. Pongo en la casilla: 4 El tablero queda como: X El objetivo de este ejercicio es crear un programa que juegue a tres en raya contra un oponente humano. Tras cada movimiento el programa debe mostrar el tablero y permitir mover al humano. El programa

Más detalles

IMPLEMENTACIÓN DE CONCEPTOS P.O.O. EN JAVA

IMPLEMENTACIÓN DE CONCEPTOS P.O.O. EN JAVA IMPLEMENTACIÓN DE CONCEPTOS P.O.O. EN JAVA Implementación de conceptos P.O.O. en Java Temario 2. Conceptos de Programación Orientada a Objetos 1. Conceptos de P.O.O. 2. Implementación de conceptos P.O.O

Más detalles

Estructura de Datos Unidad 1: Repaso del Lenguaje Java

Estructura de Datos Unidad 1: Repaso del Lenguaje Java Estructura de Datos Unidad 1: Repaso del Lenguaje Java Introducción Java es un lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems a principios de 1991, con el que se van a

Más detalles

Programación Orientada a Objetos (Grado en Ingeniería Informática y Grado en Ingeniería en Tecnologías de la Información - UNED)

Programación Orientada a Objetos (Grado en Ingeniería Informática y Grado en Ingeniería en Tecnologías de la Información - UNED) Examen de Ejemplo Programación Orientada a Objetos (Grado en Ingeniería Informática y Grado en Ingeniería en Tecnologías de la Información - UNED) Parte Teórica (2,5 puntos). La respuesta correcta se indica

Más detalles

Examen Teórico. Convocatoria de Febrero de 2015

Examen Teórico. Convocatoria de Febrero de 2015 Examen Teórico Convocatoria de Febrero de 2015 Nombre: DNI: Grupo: 1. Contesta de forma razonada a las siguientes cuestiones relacionadas con los ficheros.jar: a) Para qué se utilizan los ficheros con

Más detalles

Grado en Ingeniería Informática Estructura de Datos y Algoritmos, Grupo 81M, 2014/ de Marzo de

Grado en Ingeniería Informática Estructura de Datos y Algoritmos, Grupo 81M, 2014/ de Marzo de Grado en Ingeniería Informática Estructura de Datos y Algoritmos, Grupo 81M, 2014/2015 11 de Marzo de 2015 Nombre y Apellidos:... PROBLEMA 1 (1 punto) Programación Orientada a Objetos. Un club deportivo

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +.

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +. APUNTES DE JAVA Agenda Bienvenida Conociendo Java La Maquina Virtual Descargar e instalar el compilador El entorno de trabajo El paradigma de la programación orientada a objetos Qué es Java? Un lenguaje

Más detalles

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros

Más detalles

Programación II - TP1 1er Cuatrimestre 2018

Programación II - TP1 1er Cuatrimestre 2018 Fecha de presentación: 15/5/18 Fecha de entrega por mail: 29/5/18 Programación II - TP1 1er Cuatrimestre 2018 Requerimientos técnicos: Grupos de 1 o 2 personas Se debe utilizar al menos una vez iteradores

Más detalles

Introducción a Java. Fernando Cerezal López. 24 Noviembre 2005

Introducción a Java. Fernando Cerezal López. 24 Noviembre 2005 24 Noviembre 2005 disponibles de acceso public private protected de tipo static abstract final modificadores más avanzados que no vamos a ver... Clase Sintaxis modificadores class nombreclase{} Tipos primitivos

Más detalles

Examen de Programación II (Ingeniería Informática)

Examen de Programación II (Ingeniería Informática) Examen de Programación II (Ingeniería Informática) Septiembre 2010 1) Lenguaje C (2 puntos) Escribir el módulo "elimina_substring" (ficheros elimina_substring.h y elimina_substring.c) que defina una única

Más detalles

Laboratorio 2010 Principios de Programación

Laboratorio 2010 Principios de Programación Laboratorio 2010 Principios de Programación Introducción Este documento presenta el problema que deberá resolverse para la aprobación del laboratorio del curso 2010. Se presenta información acerca de:

Más detalles

SOFTWARE Microsoft Visual Studio 2005.NET FrameWork 2.0

SOFTWARE Microsoft Visual Studio 2005.NET FrameWork 2.0 OBJETIVOS! ""# $% % REQUERIMIENTOS SOFTWARE Microsoft Visual Studio 2005.NET FrameWork 2.0 DESCRIPCIÓN En este tutorial se va a revisar la forma de trabajar con los conceptos de OO en Visual Basic.NET.

Más detalles

Examen de Lenguajes de Alto Nivel

Examen de Lenguajes de Alto Nivel Examen de Lenguajes de Alto Nivel Septiembre 2004 Cuestiones (4 cuestiones, 4 puntos en total; contestar brevemente de forma razonada) 1) Se dispone del siguiente paquete con un procedimiento P que puede

Más detalles

Fundamentos de la programación 2014/2015 (Grupos F y G) Práctica Fecha de entrega: 29 de marzo (a las 23:55)

Fundamentos de la programación 2014/2015 (Grupos F y G) Práctica Fecha de entrega: 29 de marzo (a las 23:55) . Descripción del juego Fundamentos de la programación 204/205 (Grupos F y G) Práctica 3 2048 Fecha de entrega: 29 de marzo (a las 23:55) La práctica consiste en desarrollar un programa en C++ para jugar

Más detalles

CLAVE EXAMEN: a cd. c u r s o r = c u r s o r. g e t S i g u i e n t e ( ) ; p o s i c i o n ++;

CLAVE EXAMEN: a cd. c u r s o r = c u r s o r. g e t S i g u i e n t e ( ) ; p o s i c i o n ++; Departamento de Lenguajes y Sistemas Informáticos e Ingeniería del Software UPM ETSIINF. Exámen de Programación II. Convocatoria extraordinaria.08-07-2016. Realización: El test se realizará en la hoja

Más detalles

Unidad Didáctica 3. Tipos genéricos. Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos

Unidad Didáctica 3. Tipos genéricos. Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 3 Tipos genéricos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Definición de tipo genérico Hablamos de un tipo genérico cuando el tipo en cuestión depende

Más detalles

APELLIDOS NOMBRE GRUPO CALIFICACIÓN FECHA

APELLIDOS NOMBRE GRUPO CALIFICACIÓN FECHA Hoja 1/10 Duración: una hora y media Resultados de aprendizaje que se evalúan en este examen: R2: Saber emplear las estructuras de control de flujo de programación para implementar algoritmos sencillos.

Más detalles

Proyecto de IS3. Tercera iteración. Documento de modelo funcional

Proyecto de IS3. Tercera iteración. Documento de modelo funcional 3 de mayo de 2009 Proyecto de IS3. Tercera iteración 4 de mayo de 2009-2 - Índice Historial...3 Identificación de actores...4 Identificación de casos de uso...5 Descripción de los casos de uso...6 Identificar...6

Más detalles

HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA

HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA Estructura de la Información en Programación I.T.I.G., Matemáticas. Curso 2008/2009 Nombre:... Fecha: / 01 / 2009 HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA Esta hoja de ejercicios nos servirá

Más detalles

TECNICAS DE PROGRAMACION Universidad Católica Los Angeles de Chimbote MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE

TECNICAS DE PROGRAMACION Universidad Católica Los Angeles de Chimbote MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE Los modificadores de acceso, como su nombre indica, determinan desde qué clases se puede acceder a un determinado elemento. En Java tenemos 4 tipos:

Más detalles

El tipo de actividades que los alumnos pueden crear las podemos dividir en 4 grandes. grupos:

El tipo de actividades que los alumnos pueden crear las podemos dividir en 4 grandes. grupos: Scratch es una plataforma que demuestra los beneficios de aprender a programar desde tempranas edades. Scratch es un sencillo pero potente lenguaje de programación visual que permite la creación desde

Más detalles

ESTRUCTURA DE COMPUTADORES

ESTRUCTURA DE COMPUTADORES ESTRUCTURA DE COMPUTADORES GRADO EN INGENIERÍA INFORMÁTICA UNIVERSIDAD CARLOS III DE MADRID Grupo de Arquitectura de Computadores Práctica 2 Programación en ensamblador Curso 2015/2016 1 Contenido Objetivos

Más detalles

EXAMEN PROGRAMACIÓN 21 de Septiembre de 2007 INGENIERÍA INFORMÁTICA Primera parte: Cuestiones 1,5 horas

EXAMEN PROGRAMACIÓN 21 de Septiembre de 2007 INGENIERÍA INFORMÁTICA Primera parte: Cuestiones 1,5 horas Apellidos Nombre Firma NIA Grupo EXAMEN PROGRAMACIÓN 21 de Septiembre de 2007 INGENIERÍA INFORMÁTICA Primera parte: Cuestiones 1,5 horas Pregunta 1 (0,5 puntos).- Indicar si las siguientes afirmaciones

Más detalles

1110111-1001 1110 +0110 10100 + 1 101011-1001 01011 + 0110 10001 + 1 100101-1001 001011-1001 001011 + 0110 010001 + 1 010010 Resultado 1101 110110 54-1100 -12 101010 42 Con complemento 001100 12-110110

Más detalles

Introducción a la programación: Algoritmos

Introducción a la programación: Algoritmos Introducción a la programación: Algoritmos Algoritmo La palabra algoritmo proviene del nombre del matemático persa del siglo IX Muhammad ibn Musa al-jwarizmi Un algoritmo es una secuencia ordenada de pasos,

Más detalles

Estructura de datos y Programación

Estructura de datos y Programación Estructura de datos y Programación Tema: Conceptos Básicos- Estructuras de control - Arreglos Ing. Analia Méndez Ing. Raquel Zarco Año: 2012 ELEMENTOS DE UN PROGRAMA EN JAVA El programa Java consta de

Más detalles

Examen Teórico. Convocatoria de Julio de 2015

Examen Teórico. Convocatoria de Julio de 2015 Examen Teórico Convocatoria de Julio de 2015 Nombre: DNI: Grupo: 1. Sobre la ejecución de aplicaciones Java desde la línea de comandos: a) Explica el significado y uso del parámetro cp. b) Indica si la

Más detalles

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información Modelo Dinámico del Diseño del Software y Representación en UML UNIDAD 9 Análisis y Diseño de Sistemas de Información El Modelo Dinámico El objetivo del modelo Dinámico es presentar o describir el comportamiento

Más detalles

Práctica 2: Java Remote Method Invocation (RMI)

Práctica 2: Java Remote Method Invocation (RMI) Práctica 2: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es conocer un poco más sobre el paradigma de objetos remotos. La idea principal es

Más detalles

TEMA 7: INICIO A LA PROGRAMACIÓN CON SCRATCH

TEMA 7: INICIO A LA PROGRAMACIÓN CON SCRATCH TEMA 7: INICIO A LA PROGRAMACIÓN CON SCRATCH Scrath es un entorno de programación visual y multimedia destinado a la realización de secuencias animadas con o sin sonido y al aprendizaje de la programación.

Más detalles

Relaciones entre clases

Relaciones entre clases Relaciones entre clases 1 Humberto Cervantes Maceda Alfonso Martínez Martínez Abril 2005 Relaciones entre clases Dependencia Generalización Asociación Realización 2 Relaciones entre clases Dependencia:

Más detalles

La secuencia de referencias a páginas para el proceso B es:

La secuencia de referencias a páginas para el proceso B es: SISTEMAS OPERATIVOS (Código: 71902048) Enero 2017 Material permitido: Solo calculadora no programable Tiempo: 2 horas N1 Aviso 1: Todas las respuestas deben estar debidamente razonadas. Aviso 2: Escriba

Más detalles

POO: Clases y objetos

POO: Clases y objetos POO: Clases y objetos Programación de aplicaciones 1 Introducción En los lenguajes de programación orientados a objetos, tenemos la posibilidad de extender el lenguaje mediante la creación de nuevo tipos,

Más detalles

DESPLAZAMIENTO POR LA HOJA DE CÁLCULO

DESPLAZAMIENTO POR LA HOJA DE CÁLCULO UNIDAD DIDÁCTICA DESPLAZAMIENTO POR LA HOJA DE CÁLCULO Los objetivos de este tema son: 1. Aprender a desplazarte con el teclado por la hoja de Excel. 2. Realizar desplazamientos con el ratón. 3. Realizar

Más detalles

Manual de usuario. 01 Introducción

Manual de usuario. 01 Introducción 00 Índice 01 Introducción...3 02 Antes de comenzar...4 02.1 Requisitos mínimos...4 02.2 Qué se incluye...4 02.3 Conexión de encore...4 03 Instalación de la aplicación...5 04 Ratón, teclado o joystick...6

Más detalles

Programación Orientada a Objetos. Resumen de Temas Unidad 3: Constructores y destructores

Programación Orientada a Objetos. Resumen de Temas Unidad 3: Constructores y destructores Programación Orientada a Objetos Resumen de Temas Unidad 3: Constructores y destructores 3.1 Conceptos de métodos constructor y destructor Java inicializa siempre con valores por defecto las variables

Más detalles

Problema 1 (2 puntos)

Problema 1 (2 puntos) Programación de Sistemas Grado en Ingeniería de Sistemas de Comunicaciones y Grado en Ingeniería Telemática Leganés, 21 de marzo de 2014 Duración de la prueba: 75 min Problema 1 (2 puntos) Examen parcial

Más detalles

Programación en Lenguaje Java

Programación en Lenguaje Java Programación en Lenguaje Java Problema 2.3. Prac/car con expresiones Michael González Harbour Mario Aldea Rivas Departamento de Matemá.cas, Estadís.ca y Computación Este tema se publica bajo Licencia:

Más detalles

Examen No. 3 - Final

Examen No. 3 - Final Examen No. 3 - Final Valor: 50 pts (30% de la Nota Final) Tiempo Máximo: 2 Horas Fecha: 03 de Mayo del 2017 Observaciones Generales: El examen es individual. No se puede utilizar ningún tipo de material,

Más detalles

TECNOLOGÍAS DE LA INFORMACIÓN Y DE LA COMUNICACIÓN UD 3: SISTEMAS OPERATIVOS 1. DEFINICIÓN Y COMPONENTES DE UN SITEMA OPERATIVO.

TECNOLOGÍAS DE LA INFORMACIÓN Y DE LA COMUNICACIÓN UD 3: SISTEMAS OPERATIVOS 1. DEFINICIÓN Y COMPONENTES DE UN SITEMA OPERATIVO. 1. DEFINICIÓN Y COMPONENTES DE UN SITEMA OPERATIVO. 1. DEFINICIÓN Y COMPONENTES DE UN SITEMA OPERATIVO. 1. DEFINICIÓN Y COMPONENTES DE UN SITEMA OPERATIVO. 1. DEFINICIÓN Y COMPONENTES DE UN SITEMA OPERATIVO.

Más detalles

Universidad de Sevilla. Área de Ingeniería Telemática. Área de Ingeniería Telemática. Universidad de Sevilla. Fundamentos de Telemática

Universidad de Sevilla. Área de Ingeniería Telemática. Área de Ingeniería Telemática. Universidad de Sevilla. Fundamentos de Telemática 1 Arquitectura. Estructura de una applet. Métodos gráficos simples. La ventana de estado. Gestión de eventos. Etiqueta APPLET de HTML. Paso de parámetros a las applets. Salida por consola. 2 1 Las applets

Más detalles

Diseño y Programación Orientados a Objetos 29 de Abril de Primer Certamen

Diseño y Programación Orientados a Objetos 29 de Abril de Primer Certamen Primer Certamen Primera parte, sin apuntes (30 minutos; 1/3 de la nota): 1.- Responda brevemente y entregue en hoja con su nombre. a. Al redefinir un método en una subclase, es posible retornar un objeto

Más detalles

SEGUNDA PRÁCTICA. Programación Curso Ingeniería en Informática Universidad Carlos III de Madrid

SEGUNDA PRÁCTICA. Programación Curso Ingeniería en Informática Universidad Carlos III de Madrid SEGUNDA PRÁCTICA Programación Curso 2006-2007 Ingeniería en Informática Universidad Carlos III de Madrid 1. Instrucciones generales Durante este curso se deberán realizar tres prácticas, cuyas fechas de

Más detalles

Programación orientada a objetos. Resumen de Temas Unidad 5: Herencia

Programación orientada a objetos. Resumen de Temas Unidad 5: Herencia Programación orientada a objetos Resumen de Temas Unidad 5: Herencia 5.1 Introducción a la Herencia La herencia es el mecanismo fundamental de relación entre clases en la orientación a objetos. Relaciona

Más detalles

Tema 6: Clases. Índice

Tema 6: Clases. Índice Tema 6: Clases Antonio J. Sierra Índice 1. Fundamentos. 2. Declaración de objetos. 3. Asignación de objetos a variables referencia. 4. Métodos. 5. Constructores. 6. this. 7. Recogida de basura. 8. Modelado

Más detalles

Soluciones al Examen de Fundamentos de Computadores y Lenguajes

Soluciones al Examen de Fundamentos de Computadores y Lenguajes Soluciones al Examen de Fundamentos de Computadores y Lenguajes Cuestiones (5 cuestiones, 5 puntos en total) Examen Parcial. Junio 2005 1) Escribir una clase con un atributo privado que sea un array de

Más detalles

Informática. ETSIGCT curso 2017/2018 Presentación y boletín 1 de prácticas J. Javier Ibáñez González

Informática. ETSIGCT curso 2017/2018 Presentación y boletín 1 de prácticas J. Javier Ibáñez González Informática ETSIGCT curso 2017/2018 Presentación y boletín 1 de prácticas J. Javier Ibáñez González 1 J. Javier Ibáñez González Despacho 109 Edificio DSIC (1F) Tutorías bajo demanda e-mail: jjibanez@dsic.upv.es

Más detalles

FUNDAMENTOS DE INFORMÁTICA

FUNDAMENTOS DE INFORMÁTICA ÁREA DE LENGUAJES Y SISTEMAS INFORMÁTICOS DEPARTAMENTO DE INFORMÁTICA E INGENIERÍA DE SISTEMAS ESCUELA DE INGENIERÍA Y ARQUITECTURA FUNDAMENTOS DE INFORMÁTICA 1ª CONVOCATORIA (16-junio-2011) Ejercicio

Más detalles

Diagramas De Casos De Uso

Diagramas De Casos De Uso Estáticos Diagramas De Casos De Uso Los diagramas de casos de uso documentan el comportamiento de un sistema desde el punto de vista del usuario.. Por lo tanto los casos de uso determinan los requisitos

Más detalles

App Inventor 2. Este tutorial presenta las siguientes habilidades, útiles para el futuro desarrollo del juego:

App Inventor 2. Este tutorial presenta las siguientes habilidades, útiles para el futuro desarrollo del juego: Que estás construyendo Con la construcción de la App practicarás el uso de componentes de reloj y temporizadores, utilizando componentes de animación como Sprites de imagen y el lienzo, el establecimiento

Más detalles

GUIA 1: Repaso sobre uso de C#. Funciones, procedimientos y arreglos.

GUIA 1: Repaso sobre uso de C#. Funciones, procedimientos y arreglos. 1 POO, Guía 1 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación Orientada a Objetos GUIA 1: Repaso sobre uso de C#. Funciones, procedimientos y arreglos. Competencia Desarrolla sistemas

Más detalles

E1. Práctica UF2406: El ciclo de vida del desarrollo de aplicaciones

E1. Práctica UF2406: El ciclo de vida del desarrollo de aplicaciones E1. Práctica UF2406: El ciclo de vida del desarrollo de aplicaciones CALCULADORA Se trata de implementar una aplicación que ofrezca el interfaz y el comportamiento de una calculadora sencilla. El interfaz

Más detalles

INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Objetos y Clases Caso de estudio: Cuenta Corriente Bancaria Dr. Luciano H. Tamargo http://cs.uns.edu.ar/~lt Depto. de Ciencias e Ingeniería de la Computación

Más detalles

PRACTICA FINAL Laboratorio Programación II Abril 2006 JUEGO HUNDIR LA FLOTA.

PRACTICA FINAL Laboratorio Programación II Abril 2006 JUEGO HUNDIR LA FLOTA. PRCTIC FINL Laboratorio Programación II bril 2006 JUEGO HUNDIR L FLOT. E. I. T. Informática de Gestión E.U. Informática (Campus de Segovia) 1. INSTRUCCIONES DEL JUEGO: En este juego participan dos jugadores:

Más detalles

ACTIVIDAD INFORMÁTICA: VIDEOCLUB

ACTIVIDAD INFORMÁTICA: VIDEOCLUB ACTIVIDAD INFORMÁTICA: VIDEOCLUB En esta actividad vas a aprender como crear y organizar un videoclub utilizando todas las herramientas que ofrece LibreOffice: PASO1: Crea un carpeta llamada VIDEOCLUB,

Más detalles

10 -Herencia Y Polimorfismo. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

10 -Herencia Y Polimorfismo. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 10 -Herencia Y Polimorfismo Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas Herencia Si se supone que somos buenos programando, cuando creemos una clase es posible que sea

Más detalles

PROGRAMACIÓN EN JAVA

PROGRAMACIÓN EN JAVA SISTEMAS INFORMÁTICOS INDUSTRIALES curso 2007-2008 PROGRAMACIÓN EN JAVA PRÁCTICA 2: Jerarquía de clases en Java Objetivos Implementar una jerarquía de clases para crear una aplicación en Java Comprender

Más detalles

Conceptos Básicos de Orientación a Objetos (2da parte)

Conceptos Básicos de Orientación a Objetos (2da parte) Conceptos Básicos de Orientación a Objetos (2da parte) Operación y Método Operación: especificación de una transformación o consulta que un objeto puede ser llamado a ejecutar Método: implementación de

Más detalles

Contenido. Comentarios. l Estilo l Documentación l Pruebas l Depuración **/ l Comentarios de código. l Comentarios de documentación

Contenido. Comentarios. l Estilo l Documentación l Pruebas l Depuración **/ l Comentarios de código. l Comentarios de documentación {F-PROG dit Contenido l Estilo l Documentación l Pruebas l Depuración Fundamentos de Programación DIT- 1 {F-PROG dit Comentarios l Comentarios de código n /*... */ n // comentario táctico: hasta fin de

Más detalles

Práctica 8 Programación Funcional - Tipos Compuestos

Práctica 8 Programación Funcional - Tipos Compuestos Práctica 8 Programación Funcional - Tipos Compuestos Algoritmos y Estructura de Datos I Segundo Cuatrimestre 2010 1 Tipos Compuestos En los ejercicios de tipos compuestos NO TIENEN que definir los tipos

Más detalles

GENERACIÓN DE ÍNDICES ANALÍTICOS DE DOCUMENTOS

GENERACIÓN DE ÍNDICES ANALÍTICOS DE DOCUMENTOS : 1 sesión (del 23 al 27 de mayo de 2005) GENERACIÓN DE ÍNDICES ANALÍTICOS DE DOCUMENTOS Vamos a realizar un programa que genere automáticamente el índice analítico de un documento electrónico dado. Una

Más detalles

Introducción a los Elementos de Excel

Introducción a los Elementos de Excel Introducción a los Elementos de Excel Excel es un programa del tipo Hoja de Cálculo que permite realizar operaciones con números organizados en una cuadrícula. Es útil para realizar desde simples sumas

Más detalles

Ejercicios de programación en C. ET1032 Informática Industrial

Ejercicios de programación en C. ET1032 Informática Industrial Ejercicios de programación en C. ET1032 Informática Industrial - 2016 1 - Ejercicios generales introductorios 1. - Realizad un programa que reciba un entero tipo int- desde el teclado, lo sume consigo

Más detalles

INTELIGECIA EN REDES DE COMUNICACIONES 5º ING TELECOMUNICACIÓN TRABAJO FINAL DE LA ASIGNATURA EL SOLITARIO AUTORES

INTELIGECIA EN REDES DE COMUNICACIONES 5º ING TELECOMUNICACIÓN TRABAJO FINAL DE LA ASIGNATURA EL SOLITARIO AUTORES INTELIGECIA EN REDES DE COMUNICACIONES 5º ING TELECOMUNICACIÓN 2006-2007 TRABAJO FINAL DE LA ASIGNATURA EL SOLITARIO AUTORES DANIEL F. TAVEIRA MONTEIRO RODRIGO GÓMEZ RODRIGUEZ DAVID TOLEDO NAVARRO 1. Índice

Más detalles

SEGUNDO SEMESTRE PORTAFOLIO DE SEGUNDA OPORTUNIDAD

SEGUNDO SEMESTRE PORTAFOLIO DE SEGUNDA OPORTUNIDAD SEGUNDO SEMESTRE PORTAFOLIO DE SEGUNDA OPORTUNIDAD ING. ALMA ABBYGAIL BENAVIDES ESCAMILLA ACADEMIA DE TECNOLOGÍA DE LA INFORMACIÓN Y COMUNICACIÓN Enero Junio 2016 CONTESTA LAS SIGUIETES PREGUNTAS SOBRE

Más detalles

Diseño de tipos Igualdad, representación, código, copia y relación de orden

Diseño de tipos Igualdad, representación, código, copia y relación de orden Práctica 4 Diseño de tipos Igualdad, representación, código, copia y relación de orden Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.1 Índice Gestión de excepciones

Más detalles

Introducción a la Programación

Introducción a la Programación Introducción a la Programación Tema 8. Programación reflexiva 1. Programación Refexiva 1 1.1 Introducción 1 1.2 La clase Class.. 3 1.3 Clases Constructor, Field y Method 4 2. Usos de la Programación

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS

PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN ORIENTADA A OBJETOS GRADO EN INGENIERÍA INFORMÁTICA SEGUNDO CURSO DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO ESCUELA POLITÉCNICA SUPERIOR UNIVERSIDAD DE CÓRDOBA CURSO ACADÉMICO: 2011

Más detalles

El fichero <X11/X.h> se incluye cuando se utiliza el <X11/Xlib.h>, por tanto, cuando este último sea incluido, el primero no es necesario hacerlo.

El fichero <X11/X.h> se incluye cuando se utiliza el <X11/Xlib.h>, por tanto, cuando este último sea incluido, el primero no es necesario hacerlo. PRÁCTICAS DE ENTORNOS DE USUARIO Parte II: Programación en X-Window Ficheros cabecera Al realizar un programa X-Window, se han de incluir los siguientes ficheros cabecera, además de los ficheros cabecera

Más detalles

3.2. MANEJO DEL ENTORNO

3.2. MANEJO DEL ENTORNO 3.2. MANEJO DEL ENTORNO 3.2.1 Hoja de cálculo. Un libro nuevo de Microsoft Excel de manera predeterminada presenta tres hojas de cálculo. Si lo desea, puede modificar lo anterior aplicando el siguiente

Más detalles

Funciones y Condicionales Introducción a la Programación

Funciones y Condicionales Introducción a la Programación Funciones y Condicionales Introducción a la Programación Departamento de Ciencias e Ingeniería de la Computación Pontificia Universidad Javeriana Santiago de Cali 2011-2 Resumen En el mundo existen gran

Más detalles

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2 Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2 Contenidos: 1. Definición de clases 2. Implementación de los métodos 3. Constructores y destructores 4. Objetos

Más detalles

2. Indica cuál de las siguientes afirmaciones es cierta:

2. Indica cuál de las siguientes afirmaciones es cierta: Nombre:. Indica cuál de las siguientes afirmaciones es cierta: El diseño de un programa procedural está guiado por la división en tareas a realizar, mientras que el diseño orientado a objetos está dirigido

Más detalles

UNIDAD 1. calc PRIMEROS PASOS. CURSO: LibreOffice

UNIDAD 1. calc PRIMEROS PASOS. CURSO: LibreOffice UNIDAD 1 PRIMEROS PASOS CURSO: LibreOffice calc 1 La Interfaz En primer lugar vamos a familiarizarnos con los componentes de la pantalla de Calc. En un primer vistazo el aspecto es muy similar al de Microsoft

Más detalles

Proyecto I (15%) Simulación del Juego Solitario

Proyecto I (15%) Simulación del Juego Solitario Universidad Simón Bolívar Departamento de Computación y Tecnología de la Información Algoritmos y Estructuras II (CI2616) Enero-Abril 2003 Proyecto I (15%) Simulación del Juego Solitario El proyecto se

Más detalles

ALGORITMICA Y PROGRAMACION POR OBJETOS I

ALGORITMICA Y PROGRAMACION POR OBJETOS I ALGORITMICA Y PROGRAMACION POR OBJETOS I Nivel 1 Problemas, Soluciones y Programas Marcela Hernández Hoyos Solucionar un Problema = Construir un Programa Problema Programador Herramientas y Lenguajes Análisis

Más detalles