guia practica con ejercicios para laboratorio de modelamiento y programacion

12
Ingeniería Industrial Profesor: Juan José González Faúndez [email protected] Guía práctica para laboratorio de modelamiento y programación UML y Java Ingeniería Industrial Profesor: Juan José González Faúndez Email: [email protected] 1. Descargar e instalar la última versión del JDK (Java Development Kit) a su computador desde la siguiente dirección web: http://www.oracle.com/technetwork/es/java/javase/downloads/index.html 2. Descargar eclipse desde su sitio web: http://www.eclipse.org/downloads/ Y guárdelo en la raíz del disco C o donde desee, pero recuerde dicha ruta. NOTA: si su computador o laptop es 64 bits, escoja ese tipo de arquitectura de computador en la sección derecha donde dice Windows 64 bits.

Upload: anthony-morton

Post on 21-Jan-2016

56 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

Guía práctica para laboratorio de modelamiento y programación UML y Java Ingeniería Industrial Profesor: Juan José González Faúndez Email: [email protected] 1. Descargar e instalar la última versión del JDK (Java Development Kit) a su computador desde la siguiente

dirección web: http://www.oracle.com/technetwork/es/java/javase/downloads/index.html

2. Descargar eclipse desde su sitio web: http://www.eclipse.org/downloads/ Y guárdelo en la raíz del disco C o donde desee, pero recuerde dicha ruta.

NOTA: si su computador o laptop es 64 bits, escoja ese tipo de arquitectura de computador en la sección derecha donde dice Windows 64 bits.

Page 2: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

3. Una vez descargado el archivo, descomprima el contenido del archivo y deberá ver su estructura interna como muestra la siguiente imagen.

4. Cree un acceso directo del archivo eclipse.exe a su escritorio

5. Ejecute el programa dando doble click en el acceso directo de su escritorio.

Page 3: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

6. Acepte la ventana donde le indica el workspace (espacio de trabajo), en donde le indica el lugar donde serán guardados los proyectos java que se desarrollen con eclipse y opcionalmente puede marcar la casilla para que no pregunte nuevamente al volver a ingresar en el programa.

7. Ya se encuentra en su entorno de desarrollo

8. Creemos un proyecto de prueba para verificar el funcionamiento de eclipse y de java. File-New-Java

Project

Page 4: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

9. Creamos una clase de prueba dando click derecho en la carpeta de nuestro proyecto-New-Class

Page 5: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

10. Le definimos algunos atributos (campos) a nuestra clase cliente, por ejemplo: Rut (String), Nombre (String)

y Edad (int). Para referencia acerca de los tipos de datos, consulte el archivo tiposdedatos.pdf que se encuentra publicado en la plataforma de Intranet. RECUERDE: java es un lenguaje case-sentitive, reconoce la diferencia entre mayúsculas y minúsculas (consulte la clase N°3).

Page 6: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

NOTA: las marcas en amarillo (warnings) nos recuerdan que debemos definir los accesores (get/set) a estos campos, ya que se definen como privados por seguridad (principio de ocultamiento de la información), además, el warning en este caso nos dice que dichos campos no se están usando. Si obtiene alguna marca en rojo, significa que alguno de los pasos anteriores no se ejecutó bien, vuelva a intentarlo desde cero. 11. Cree los accesores de los atributos (campos) apoyándose del asistente de eclipse. Click derecho dentro

del código (alguna sección vacía), source y luego Generate Getters and Setters… también puede llegar a la misma opción a través del menú superior source.

Page 7: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

Ahora ya están definidos los accesores de los atributos de nuestra clase Cliente.

Page 8: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

NOTA: Cuando se crea una clase es frecuente que lo primero que se haga sea establecer métodos para consultar (de ahí su denominación de consultores) sus atributos y estos métodos suelen ir precedidos del prefijo get (getMatricula, getDistrito, etc.) por lo que muchas veces se alude coloquialmente a ellos como “métodos get” o “getters”. Se suele proceder de igual forma con métodos que permitan establecer los valores de los atributos. Estos métodos suelen ir precedidos del prefijo set (setMatricula, setDistrito, etc.) por lo que muchas veces se alude coloquialmente a ellos como “métodos set” o “setters”. Los métodos set son un tipo de métodos modificadores, porque cambian el valor de los atributos de un objeto. ¿Puede un método ser al mismo tiempo modificador y consultor? Es posible, pero es una situación que trataremos de evitar (aunque de momento asumamos que cada campo es consultor [get] y modificador [set]). Nos plantearemos como objetivo que cada método haga una cosa específica y no varias al mismo tiempo. Referencia: http://java.about.com/od/workingwithobjects/a/accessormutator.htm 12. Ahora creamos nuestra clase principal, la que contendrá el método principal (MAIN), que es el punto de

partida desde donde crearemos los objetos de nuestras clases. REF: Clase N° 3. Marque la casilla correspondiente para que el asistente genere de forma automática el método main de la clase ProgramaPrueba.

Page 9: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

13. Cree un objeto de prueba y setee los valores de dicho objeto.

14. Ejecute el programa:

Page 10: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

Ejercicios

Cada ejercicio guárdelo en un proyecto diferente.

Al igual que Java nos ofrece System.out para escribir en pantalla, tenemos System.in para leer de ella. System.in

es un objeto de una clase de java que se llama InputStream.

Para java, un InputStream es cualquier cosa de la que se leen bytes. Puede ser el teclado, un fichero, un socket,

o cualquier otro dispositivo de entrada. Esto, por un lado es una ventaja. Si todas esas cosas son InputStream,

podemos hacer código que lea de ellas sin saber qué estamos leyendo.

Con la clase InputStreamReader podríamos complicarnos ya que nos da los caracteres sueltos. Si estamos

leyendo de teclado, el que usa el programa puede escribir 10 caracteres o 20 o 13. Si usamos

InputStreamReader, como lee caracteres sueltos, Tenemos que decirle cuántos queremos (que no lo sabemos),

o bien ir pidiendo de uno en uno hasta que no haya más.

Ejemplo para leer un valor desde el teclado:

Referencia: http://www.chuidiang.com/java/novatos/entrada_standard_java.php

Forma alternativa:

Page 11: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

1. Haga un programa en java que simule la calculadora de Windows con las operaciones de: suma, resta,

multiplicación, división, raíz cuadrada y porcentaje. El resultado muéstrelo en la consola.

2. Escriba un programa que convierta de grados Fahrenheit a grados Celsius:

3. Escriba un programa en java que pida dos números integer al usuario por teclado y que muestre en

pantalla cuál de los dos es más grande. Ref:

http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Java/Sentencia_if-else

4. El proceso de encontrar el valor más grande (es decir, el máximo de un grupo de valores) se utiliza con

frecuencia en las aplicaciones informáticas. Por ejemplo, un programa que determine el ganador de un

concurso de ventas deberá introducir el número de unidades vendidas por cada vendedor. El vendedor

que vende la mayoría de las unidades gana el concurso. Escriba una aplicación Java que introduce una

serie de 10 números enteros, y determina e imprime el entero más grande. Su programa debe utilizar por

lo menos las siguientes tres variables:

A. Contador: Un contador de contar hasta 10 (es decir, hacer un seguimiento de la cantidad de números

que se han introducido y determinar si se han procesado todos [los 10 números]).

B. número: El número entero de entrada más recientemente ingresado por el usuario.

C. más grande: El número más grande encontrado hasta ahora.

5. Escriba una aplicación que imprima la siguiente tabla de valores:

6. Escriba un programa en Java que le pida al usuario el radio de una esfera y llame a un método (en otra

clase) para que calcule y muestre el volumen de la esfera. Use la siguiente sentencia para calcular el

volumen:

7. Crear una clase llamada Factura que una ferretería podría utilizar para representar una factura por un

artículo vendido en la tienda. Una factura debe incluir cuatro datos como variables de instancia-un

número de referencia (tipo String), una descripción de la pieza (tipo String), una cantidad de mercancía

que se compra (tipo int) y un precio por artículo (double). Su clase debe tener un constructor que inicializa

las cuatro variables de instancia. Proporcionar un modificador y un método get para cada variable de

instancia. Además, proporcionar un método denominado getMontoFactura que calcula el importe de la

factura (es decir, se multiplica la cantidad por el precio por unidad), a continuación, devuelve la cantidad

como valor double. Si la cantidad no es positiva, se debe establecer en 0. Si el precio del artículo no es

positivo, debe establecerse en 0.0.

8. Crear una clase llamada Empleado que incluye tres piezas de información como variables de instancia-un

nombre (tipo String), un apellido (tipo String) y un salario mensual (doble). Su clase debe tener un

constructor que inicializa las tres variables de instancia. Proporcionar un modificador y un método get

Page 12: Guia Practica Con Ejercicios Para Laboratorio de Modelamiento y Programacion

Ingeniería Industrial Profesor: Juan José González Faúndez [email protected]

para cada variable de instancia. Si el salario mensual no es positivo, ajústelo a 0.0. Cree dos objetos

Empleados y mostrar el salario anual de cada objeto. A continuación, dar a cada empleado un 10% de

aumento y mostrar el salario anual de cada empleado de nuevo.

9. Crear una clase CuentaAhorro. Utilice una variable para almacenar el tipo de interés anual para todos los

titulares de las cuentas. Cada objeto de la clase contiene una variable de instancia privada indicando la

cantidad que el ahorro tiene actualmente en depósito. Proporcionar un método para calcular el interés

mensual multiplicando el balance mensual por la razón del interés anual dividido por 12, este interés debe

añadirse al balance de ahorros. Proporcionar además un método que establezca la razón de interés anual

a un nuevo valor. Escriba un programa para probar su clase. Crear una instancia dos objetos, ahorrante1 y

ahorrante2, con saldos de $ 2,000.00 y $ 3,000.00, respectivamente. Establecer el interés anual a 4%, a

continuación, calcular el interés mensual e imprimir los nuevos balances. A continuación, establezca el

interés anual al 5%, calcular el interés del próximo mes e imprimir los nuevos balances.

10. La Empresa Red Fácil provee el servicio de contenedor de las transacciones que los distintos comercios

asociados a esta red hacen utilizando como medio de pago tarjeta de créditos de grandes tiendas. Por

ejemplo, el cargar combustible en las estaciones Shell con tarjeta de Almacenes París o en Copec con

Falabella. La idea es que las transacciones queden contenidas en una base de datos de propiedad de esta

red y que mensualmente, se informe a los distintos emisores de las transacciones que fueron aprobadas y

operadas en el periodo. Los requerimientos formales son:

a. Registro de transacciones de tarjetas de créditos de grandes tiendas.

b. Registro de la autorización de uso.

c. Informar mensualmente la lista de transacciones registradas en el periodo.

d. DISEÑE Y PROGRAME LAS CLASES PARA DARLE SOLUCIÓN A ESTOS REQUERIMIENTOS

11. Una compañía aseguradora de salud desea diseñar una base de datos para automatizar parte de su

gestión hospitalaria. En una primera etapa solo quiere considerar los siguientes aspectos:

a. Los hospitales de su red pueden ser propios o concesionados; además de los datos comunes a

todos los hospitales como son el código del hospital, su nombre, número de camas, además

cuando el hospital es propio se tienen otros datos específicos como el presupuesto y el tipo de

servicio.

b. Una póliza que se identifica por el número de póliza, tiene varios atributos que se agrupan bajo

el nombre de datos de póliza. Una póliza cubre a varios pacientes, los cuales se identifican por

un número correlativo, añadido al número de la póliza, y tienen un nombre y fecha de

nacimiento.

c. Los pacientes cubiertos por una misma póliza pueden ser de distintas categorías. Mientras los

asegurados de primera categoría (APC) pueden ser hospitalizados en cualquier hospital, los de

segunda clase (ASC) solo pueden ser hospitalizados en los propios.

d. Interesa saber en qué hospital han estado (o están) hospitalizados los asegurados, el médico

que prescribió la hospitalización, así como las fechas de inicio y fin de la misma.

e. Los médicos, que se identifican por un código, tienen un nombre y teléfonos de contacto. Existe

una dependencia jerárquica entre médicos de forma que un médico tiene un único jefe que

también es médico.

f. DISEÑE Y PROGRAME LAS CLASES PARA DARLE SOLUCIÓN A ESTOS REQUERIMIENTOS

Suerte!