View
321
Download
4
Category
Preview:
DESCRIPTION
www.maestronline.com ciencias_help@hotmail.com
Citation preview
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Solicita una cotización a través de nuestros correos.
Maestros Online
Programación
orientada a
objetos
Apoyo en
ejercicios
Servicio de asesorías y solución de ejercicios
Ciencias_help@hotmail.com
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
1. Reúnanse en equipo.
2. Realicen las siguientes actividades y elaboren un documento con sus respuestas.
a. Mencionen dos objetos que estén a su alrededor, para cada uno de ellos,
escriban 6 atributos y 6 comportamientos.
b. A continuación se listan una serie de palabras o frases. Si el objeto es un
correo electrónico, encierren en un círculo sus atributos, subrayen los
comportamientos y tachen las que no tengan relación.
i. Asunto.
ii. Recibir un correo.
iii. Cantidad de correos almacenados texto del correo.
iv. Eliminar completamente el correo a quién va dirigido.
v. Nombre del paquete empleado para enviar/recibir correos.
vi. Mover el correo a una carpeta.
vii. Hora en la que se envió/recibió el correo.
viii. Carpeta en la que está el correo.
ix. Marcar como leído el correo.
x. Fecha en la que se envió/recibió el correo.
xi. Con copia para.
xii. Enviar el correo.
xiii. Crear un correo.
c. Contesten las siguientes preguntas:
i. ¿Cuál es la diferencia entre la programación lineal y la programación
estructurada?
ii. ¿Cuándo es mejor la programación orientada a objetos que la
programación estructurada?
iii. ¿Por qué crees que la programación orientada a objetos facilita el
desarrollo de programas grandes y complejos?
iv. ¿Cuál o cuáles de las características de la POO ayudan a agilizar el
desarrollo de software?
v. Una de las características de la POO es el encapsulamiento.
¿Consideras que esta característica se puede dar cuando no hay
ocultamiento de información?
d. En un diccionario de informática pueden encontrar la siguiente definición de la
palabra abstracción:
Abstracción: Es un proceso mental que se aplica al seleccionar algunas
características y propiedades de un conjunto de cosas del mundo real,
excluyendo otras no pertinentes. En otras palabras, es una representación
mental de la realidad.
e. Realicen lo siguiente:
i. Dibujen en un papel un celular.
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
ii. Lo que dibujaron es un celular o la abstracción de un celular. ¿Por
qué?
iii. ¿Por qué consideran que la capacidad de abstracción es importante en
el desarrollo de software?
3. En equipo realicen las siguientes actividades:
a. Para cada uno de los siguientes enunciados de un problema, realicen lo que
se indica y entreguen un reporte con las respuestas.
Primer enunciado
La compañía OBJ está conformada por empleados y departamentos. Se
cuenta con los siguientes datos de cada empleado: nombre, sueldo y
antigüedad en la empresa. Para cada uno de los departamentos se cuenta con
la siguiente información: su clave, su nombre, ubicación y la cantidad de
empleados que tiene.
i. El objetivo es hacer un sistema para actualizar y mostrar la información
del empleado y del departamento.
Segundo enunciado
Un zoológico desea hacer una aplicación computacional para llevar la
organización de las especies, los empleados y las visitas guiadas.
Para cada una de las especies se quiere conservar: su nombre en español, su
nombre científico, una descripción general y sección del zoológico en la que
está ubicada.
Cada empleado cuenta con: su número de empleado, nombre y sección del
zoológico en la que labora.
El zoológico programa visitas guiadas dos o 3 veces al mes,
aproximadamente.
Para cada visita se almacenan los siguientes datos: la fecha y hora en la que
se realizará, la escuela que programó la visita y la cantidad de niños que
asistirán.
Básicamente lo que que realiza la aplicación es añadir, mostrar y modificar la
información de las especies, empleados y visitas guiadas.
ii. Identifiquen las clases.
iii. Reconozcan los atributos y comportamientos de cada clase. Deben
incluir solamente los que se mencionan en el enunciado.
iv. Determinen el nivel de visibilidad de los atributos y métodos.
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
v. Construyan el encabezado de cada método. Para este caso no tomen
en cuenta un lenguaje de programación, solo es importante determinar
el nombre, qué parámetros debe recibir, si regresa o no un resultado.
vi. Dibujen el diagrama de cada una de las clases identificadas.
4. De manera individual, realiza las siguientes actividades.
a. Lee el siguiente enunciado de un problema y realiza lo siguiente:
Enunciado
La tienda Quiquiriquí los ha contratado para que le realicen una aplicación que funcione en un
dispositivo móvil y cuyo objetivo sea acceder a la información de sus empleados y clientes.
Tanto para los empleados como para los clientes se debe contar con su nombre, edad y
teléfono.
Solo para los empleados se tienen también el sueldo y su antigüedad.
Al dueño de la tienda le gusta llevar un registro adicional sobre los clientes que incluye el
promedio de sus compras y el saldo deudor. La aplicación debe permitir añadir, mostrar y
modificar la información de los empleados y clientes de la tienda.
i. Identifica las clases involucradas en el problema.
ii. Especifica el tipo de relación que existe entre las clases.
iii. Reconoce los atributos y comportamientos de cada clase. Incluye
solamente los que se mencionan en el enunciado.
iv. Determina el nivel de visibilidad de los atributos y métodos.
v. Construye el encabezado de cada método. Para este caso, no tomes
en cuenta un lenguaje de programación solo es importante determinar
el nombre, qué parámetros debe recibir, si regresa o no un resultado.
vi. Dibuja el diagrama de cada una de las clases identificadas.
2. Reúnanse en equipo para realiza un programa que sea útil para determinar si los
números enteros A, B y C, proporcionados por el usuario, son medidas correctas para
los lados de un triángulo y si lo son, indicar si se trata de un triángulo equilátero,
isósceles o escaleno.
NOTA: A, B y C son los lados de un triángulo si cumplen con las siguientes
condiciones:
1. Todos los números son mayores que cero
2. A + B > C
3. A + C > B
4. B + C > A
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Es decir, la suma de dos de las medidas debe ser estrictamente mayor que la
tercera.
El triángulo equilátero tiene 3 lados iguales, el isósceles tiene 2 lados iguales y el
escaleno tiene los 3 lados de diferente longitud.
El programa debe solicitar y leer la magnitud de los tres lados del triángulo. Cada uno
de ellos debe ser un número con punto decimal.
Después de leer los datos el programa debe desplegar una de las siguientes leyendas:
5. Las medidas no forman un triángulo.
6. El triángulo es equilátero.
7. El triángulo es isósceles.
8. El triángulo es escaleno.
2. Reúnanse en equipo y den solución al siguiente ejercicio.
a. Ejercicio 1. Parque de diversiones Great Adventure Mexico.
El dueño del parque de diversiones “Great Adventure Mexico” tiene una máquina para
vender boletos. La máquina vende 3 tipos de boletos:
i. Adulto que cuestan $120,
ii. (N) Niños que cuestan $75 y
iii. Abuelitos con credencial del INAPAM que cuestan $60.
Para comprar los boletos en esta máquina deben solicitarse de 1 a la vez (como la
máquina que vende latas de refrescos). Puedes suponer que la máquina tiene una
cantidad ilimitada de boletos de los 3 tipos.
Al momento de la consultoría, se dan cuenta de que para dar solución al problema es
necesario escribir un programa que pregunte el tipo de boleto (A clave para el boleto
de adulto, N clave para el boleto de niño o I clave para el boleto de INAPAM), muestre
su precio y luego pregunte si hay otro cliente, si el usuario contesta que sí, el
programa debe repetir el proceso.
Ejemplo de la ejecución del programa:
Tipo de boleto? A
El boleto cuesta? $120.00
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Otro boleto (s/n)? s
Tipo de boleto? I
El boleto cuesta? $60.00
Otro boleto (s/n)? n
Fin del programa
b. Ejercicio 2. Omitiendo los múltiplos de 3
Escriban un programa que genere y despliegue los primeros 100 números de
la siguiente secuencia:
1, 2, 4, 5, 7, 8, 10…
Observen que la secuencia omite los múltiplos de 3. Los 100 números se
deberán desplegar en pantalla en grupos de 10 en 10. El programa no solicita
ningún dato de entrada.
Ejemplo de la ejecución del programa:
1 2 4 5 7 8 10 11 13 14
16 17 19 20 22 23 25 26 28 29
31…
IMPORTANTE: El programa debe utilizar un ciclo que genere los números.
3. Reúnanse en equipo y den solución a los siguientes ejercicios.
a. Ejercicio 3. Conversión de unidades
En la empresa en la cual trabajan, la dirección desea lanzar una App para Android que
convierta unidades de metros a Centímetros (C), Yardas (Y) o Pies (P). Como ustedes
quieren ser Project Manager del proyecto, tu jefe como prueba les pide que desarrollen
un programa el cual le solicite al usuario la cantidad de metros y el tipo de conversión,
para después desplegar la cantidad en la unidad de longitud seleccionada.
No se sabe la cantidad de conversiones que realizará el programa pero está
establecido que el programa se debe terminar cuando la cantidad de metros sea igual
a cero.
Ejemplo de la ejecución del programa:
¿Cantidad en metros? 10
Unidad (C/Y/P)? Y
10 metros es igual a 10.9361 yardas
¿Cantidad en metros? 5
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
¿Unidad (C/Y/P)? P
5 metros es igual a 196.85 pulgadas
¿Cantidad en metros? 0
Fin del programa
El programa debe contener 3 métodos:
ii. Método para convertir de metros a centímetros.
iii. Método para convertir de metros a yardas.
iv. Método para convertir de metros a pulgadas.
e. Ejercicio 4. Funciones trigonométricas
Es clase de Matemáticas Financieras y han olvidado su calculadora científica,
como necesitan ser capaces de resolver los ejercicios, deciden escribir un
programa que despliegue en pantalla las tablas de alguna de las siguientes
funciones trigonométricas Math.Sin(x), Math.Cos(x) o Math.Tan(x).
Para esto el programa debe solicitar al usuario lo siguiente:
i. Tabla que desea desplegar: Cos, Sin o Tan.
ii. Valor inicial de x.
iii. Valor final de x.
Después de leer la información, el programa debe desplegar en pantalla la
tabla para valores de x que van desde el inicial hasta el final en incrementos de
0.1.
Ejemplo de la ejecución del programa:
Tipo de tabla (S/C/T)? C
Valor inicial? 0
Valor final? 1
x Cos(x)
-----------------------
0 1
0.1 0.995
----
1 0.5403
El programa debe incluir un método que despliegue la tabla para cada una de
las funciones trigonométricas.
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Diagrama de clases básico para modelar la estructura de un problema y un programa
escrito en Java.
Instrucciones para realizar evidencia:80%
La evidencia a realizar para este módulo consta de 2 partes.
1. La primera de ellas tiene que ver con modelado de las clases que se deben
construir para resolver la problemática que se plantea.
2. La segunda parte consiste en elaborar un programa en un lenguaje orientado a
objetos que resuelva la situación que se describe en dicha sección.
3. Lee el siguiente enunciado de un problema y realiza lo siguiente:
Haz clic en cada botón para ver el enunciado del problema.
Problema
a. Identifica las clases involucradas en el problema.
b. Especifica el tipo de relación que existe entre las clases.
c. Reconoce los atributos y comportamientos de cada clase. Incluir
solamente los que se mencionan en el enunciado.
d. Determina el nivel de visibilidad de los atributos y métodos.
e. Construye el encabezado de cada método. Para este caso, no tomes en
cuenta un lenguaje de programación, solo es importante determinar el
nombre, qué parámetros debe recibir, si regresa o no un resultado.
f. Dibuja el diagrama de cada una de las clases identificadas.
4. Escribe un programa que pida al usuario una fecha con tres números enteros
(día, mes y año). El programa debe indicar al usuario si la fecha es válida o no.
En la realización del programa debes considerar:
a. La cantidad de días que tiene cada mes y además si el año es bisiesto o
no.
b. Recuerda que un año bisiesto es aquel en el que el mes de febrero tiene
29 días. Se dice que un año es bisiesto si es divisible entre 4, excepto
que sea divisible entre 100. Pero si es divisible entre 100 y también es
divisible entre 400, entonces sí es bisiesto.
c. Al ejecutar el programa, este pedirá al usuario que teclee primero el
número del día, posteriormente solicitará y leerá el número del mes y
finalmente el año con un número de 4 dígitos.
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
d. El programa verificará la fecha y desplegará en la pantalla la palabra
FECHA CORRECTA si la fecha es válida, o FECHA INCORRECTA si la
fecha no es válida.
e. Una vez que el programa termina de verificar la primera fecha, el
programa debe preguntar al usuario si desea validar otra fecha. Si su
respuesta es „S‟ o „s‟ el programa repetirá el proceso antes descrito de lo
contrario terminará su ejecución.
Ejemplo de la ejecución del programa:
Día? 6
Mes? 13
Año? 2013
FECHA INCORRECTA
Desea verificar otra fecha S/N? s
Día? 29
Mes? 2
Año? 1900
FECHA INCORRECTA
Desea verificar otra fecha S/N? s
Día? 28
Mes? 2
Año? 1900
FECHA CORRECTA
Desea verificar otra fecha S/N? n
5. Al elaborar el programa, debes emplear métodos definidos por ti, que realicen
una acción específica como por ejemplo: “determinar si un año es bisiesto o
no”.
6. Cajero Automático
7. Un banco desea introducir el servicio de Cajero Automático para proveer algunas
facilidades a sus clientes.
8. Los cajeros solo pueden aceptar tarjetas de cuentas de cheques y tarjetas de cuentas
de ahorros. Los usuarios solo pueden: ver su balance, retirar dinero de sus tarjetas y
cambiar su PIN.
9. Cada tarjeta solo puede acceder a una cuenta ya sea de cheques o de ahorros pero,
una cuenta de cheques puede ser accedida utilizando diferentes tarjetas (no más de 4
tarjetas). Un PIN está asociado con cada tarjeta para verificar la autenticidad del
usuario.
10. Toda cuenta tiene un balance (cantidad de dinero que tiene la cuenta).
11. La cuenta de cheques tiene derecho a un 10% de sobregiro. Por lo tanto para una
cuenta de cheques, el máximo retiro permitido no debe exceder del balance más el
sobregiro en el entendido de que en el cajero siempre habrá suficiente dinero.
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
12. Una cuenta de ahorros no tiene un porcentaje de sobregiro por lo que el máximo retiro
permitido no debe exceder del balance.
13. La información del cliente no se requiere en este sistema y se cuenta con 2 tipos
de hardware (la lectora de tarjetas y el dispensador de dinero).
14. La lectora de tarjetas lee la tarjeta y envía el número al sistema. El sistema le indica a
la lectora cuándo sacar la tarjeta.
Escribe un programa que obtenga la suma de los elementos que están en posiciones
opuestas dentro de un arreglo unidimensional de enteros. El procedimiento a seguir es el
siguiente:
a. Identifiquen el tamaño del arreglo (el arreglo puede tener un número par o impar de
elementos).
b. Llenen un arreglo con los valores enteros tecleados por el usuario.
c. Creen otro arreglo que contenga la suma de los elementos que están en las
posiciones opuestos dentro del arreglo es decir se suma el elemento de la posición
cero con el elemento de la última posición y el resultado se guarda en la posición cero
del nuevo arreglo; luego se suma el elemento de la posición 1 con el de la penúltima
posición y se guarda en la segunda posición del nuevo arreglo y así sucesivamente.
d. Desplieguen el arreglo con los valores tecleados por el usuario.
e. Desplieguen el nuevo arreglo con la suma de los elementos que están en posiciones
opuestas.
1. A continuación, se pone como ejemplo la ejecución en consola del programa:
Cantidad de elementos del arreglo: 7
Teclea los 7 valores
1: 8
2: 6
3: 4
4: 2
5: 1
6: 7
7: 3
Elementos del arreglo: 8 6 4 2 1 7 3
Elementos del nuevo arreglo: 11 13 5 2
Restricciones:
Las restricciones del programa son las siguientes:
El programa debe contener varios métodos.
El programa debe emplear 2 arreglos uno para los valores leídos y otro para
almacenar las sumas.
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Parte 2
3. En equipo, escriban la solución computacional al siguiente problema.
4. A continuación se presenta un ejemplo de la ejecución del programa:
¿Cuál es la dimensión de la matriz? 10
La matriz resultante es:
1 9 9 9 9 9 9 9 9 1
9 1 9 9 9 9 9 9 1 9
9 9 1 9 9 9 9 1 9 9
9 9 9 1 9 9 1 9 9 9
9 9 9 9 1 1 9 9 9 9
9 9 9 9 1 1 9 9 9 9
9 9 9 1 9 9 1 9 9 9
9 9 1 9 9 9 9 1 9 9
9 1 9 9 9 9 9 9 1 9
1 9 9 9 9 9 9 9 9 1
5. Escriban la solución computacional al siguiente problema.
6. A continuación se presenta un ejemplo de la ejecución del programa:
Cantidad de renglones del arreglo? 3
Cantidad de columnas del arreglo? 5
El arreglo que se generó es el siguiente:
1 4 5 8 0
2 0 9 7 0
3 6 2 8 9
Cantidad de ceros: 3
Cantidad de ceros por renglón: 1 2 0
Cantidad de ceros por columna: 0 1 0 0 2
Parte 3
7. En equipo, escriban la solución computacional para el siguiente problema.
8. A continuación se presenta un ejemplo de la ejecución del programa:
Secuencia? ATGCTATGATCG
base A: 3
base G: 3
base C: 2
base T: 4
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Secuencia? AGTCAGTCAAGGGTC
base A: 4
base G: 5
base C: 3
base T: 3
Secuencia? ttctcgtcga
base A: 1
base G: 2
base C: 3
base T: 4
Secuencia? FIN
9. Escriban la solución computacional para el siguiente problema.
10. A continuación se presenta un ejemplo de la ejecución del programa:
Mensaje? Feliz 16avo Cumpleaños!
El costo del mensaje es:
17 letras $170.00
2 dígitos $40.00
2 especiales $60.00
TOTAL: $270.00
Nota: Considera que tu actividad debe estar documentada (proceso) y fundamentada.
Entregable(s): Programas escritos en el lenguaje de programación Java.
Escribe una aplicación que cree un arreglo de 10 caracteres que contenga un „*‟ en la casilla 0 y „#‟ en las demás casillas (*#########). El usuario tecleará un número que indicará hacia dónde se debe mover el asterisco. Si el número es positivo el asterisco se debe mover hacia la derecha. Si el número es negativo el asterisco se debe mover hacia la izquierda. Si el número es cero se termina el programa. El programa debe emplear excepciones para controlar que el asterisco no se salga del arreglo. En lugar de salirse del arreglo el asterisco debe quedar en el límite.
1. A continuación, se pone como ejemplo la ejecución en consola del programa:
*#########
3
###*######
-1
##*#######
6
########*#
6
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
#########*
-11
*#########
0
Parte 2
3. En equipo escribe la clase LaHora que contenga la siguiente estructura.
4. Y que contenga las siguientes restricciones:
En la estructura se puede observar que LaHora tiene tres atributos: hora,
minutos, segundos. La clase tendrá tres constructores y
los métodos get y setcorrespondientes a cada uno de los atributos. El resto de los
métodos se explican a continuación:
a. valida()
Este método regresa un valor de verdadero si la los atributos de LaHora
tienen valores correctos es decir que la hora estén en el rango de 1 a 23,
los minutos y los segundos de 0 a 59.
b. despliega()
Se encarga de desplegar LaHora en el formato hh:mm:ss.
c. segundosTranscurridos()
Regresa un entero con la cantidad de segundos transcurridos desde la
media noche hasta LaHora.
d. ajusta()
Modifica LaHora a la hora minutos y segundos que corresponde después
de haber pasado los segundos que se reciben como parámetro a partir de
la media noche.
e. avanza()
El método avanza LaHora un 60 segundos.
f. retrocede()
Este método retrocede LaHora 60 segundos.
5. Escriban un programa de aplicación que sea útil para verificar el funcionamiento
de cada uno de los métodos de la clase.
Parte 3
6. En equipo, analiza el siguiente enunciado:
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Un número complejo, es una entidad matemática que viene dada por un par de
números reales, el primero ”a” se denomina la parte real y al segundo ”b” la parte
imaginaria. Un número complejo puede ser expresado como a + bi.
a. Escriban la clase Complejo la cual debe contener la siguiente estructura.
b. Verifiquen el funcionamiento de tu clase con el siguiente programa.
c. El programa solicitará un número (n) que significa el número de casos.
Por cada caso, se deberán teclear dos números Complejos (parte real e
imaginaria). Por cada caso, el programa mostrar la suma de complejo1 y
complejo2, la resta de complejo1 - complejo2 y la resta de complejo2 -
complejo1.
d. A continuación, se pone como ejemplo la ejecución en consola del
programa:
2
8 -2
2 -1
10-3i
6-1i
-6+1i
10 4
3 2
13+6i
7+2i
-7-2i
Nota: Considera que tu actividad debe estar documentada (proceso) y fundamentada.
Programa en lenguaje Java para solucionar un problema aplicando arreglos, strings y
una aplicación en lenguaje Java mediante el uso y construcción de una clase.
Instrucciones para realizar evidencia:80%
La evidencia a realizar para este módulo consta de 2 problemas a resolver. En cada
problema vas a realizar un programa en un lenguaje orientado a objetos que resuelva la
situación concreta que se te presenta.
Problema 1
1. Elabora un programa que emplee arreglos y strings para solucionar un
problema.
MANK
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Dentro de un sistema computacional se requiere crear una "Mascara de ceros y uno" para
una secuencia de números de tal forma que se asigne un 0 para los valores positivos y
el 1 para los negativos.
Por ejemplo: La secuencia: 1, -3, -5, 8, 9, -6, -43, -8 tendría la siguiente máscara:
01100111.
Escribe un programa que lea una secuencia de 10 números enteros y despliegue en
pantalla la máscara.
Ejemplo de la ejecución del programa:
Teclea la secuencia de números:
1: -3
2: 5
3: 8
4: 34
5: -12
6: -56
7: 4
8: 39
9: 90
10: -1
La máscara que le corresponde es: 1000110001
Restricciones:
El programa debe contener un método de nombre getMask que regrese como resultado
un string que contiene la máscara.
Problema 2
2. Elabora un programa que emplee clases y objetos para solucionar un problema.
Escribe la clase Fecha que contenga la siguiente estructura:
public class Fecha {
private int dia;
private int mes;
private int anio;
public Fecha () { }
public Fecha (int d, int m, int a) { }
public Fecha ( Fecha f2 ) {}
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
public int getDia() {}
public int getMes() {}
public int getAnio() {}
public void setDia(int d) {}
public void setMes(int m) {}
public void setAnio(int a) {}
public boolean esBisiesto() { return false; }
public boolean validaFecha() { return false; }
public boolean igualQue(Fecha f2) { return false; }
public boolean mayorQue(Fecha f2) { return false; }
public void despliegaFechaCorta() {}
public void despliegaFechaLarga() {}
public String nombreMes(){}
public void avanza() {}
public void avanzaNDias (int N) {}
}
En la estructura se puede observar que una fecha tiene 3 atributos: día, mes y año.
La clase tendrá tres constructores y los métodos get y set correspondientes a cada uno de
los atributos.
El resto de los métodos se explican a continuación:
esBisiesto: regresa el valor de true si el año es bisiesto; regresa false en caso contrario.
validaFecha: regresa el valor de true si la fecha es correcta; regresa false en caso
contrario.
Una fecha es correcta si el año es mayor a 1900, el mes está en el rango del 1 al 12 y el
día es correcto de acuerdo al mes y al año.
igualQue: este método compara dos fechas (la fecha del this y la fecha que recibe como
parámetro). Regresa el valor true si ambas fechas son iguales es decir tienen el mismo
día, mes y año. Regresa un false en caso contrario.
mayorQue: este método compara dos fechas (la fecha del this y la fecha que recibe
como parámetro). El método regresa el valor true si la fecha del this es mayor (se
presenta después) a la fecha que recibe como parámetro.
despliegaFechaCorta: el método despliega la fecha en el formato: dd-mm-aaaa.
despliegaFechaLarga: el método despliega la fecha en el formato: dd del nombreDelMes
de aaaa.
nombreMes: regresa el nombre del mes que le corresponde al número asignado al
atributo mes.
avanza: el método avanza un día la fecha del this.
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
avanzaNDias: este método avanza N días la fecha del this. El método se puede auxiliar el
método avanza para realizar su proceso.
Ahora escribe una aplicación de la clase Fecha que realice lo siguiente:
a. Lee el día, mes y año de una fecha "f1".
b. Asegurarte de que la fecha "f1" es correcta. Si no lo es leer la fecha nuevamente.
c. Despliega el siguiente menú:
i. Desplegar fecha forma corta.
ii. Desplegar fecha forma larga.
iii. Determinar si el año es bisiesto.
iv. Avanzar la fecha 1 día y desplegarla en forma corta.
v. Avanzar la fecha N días y desplegarla en forma corta.
vi. Comparar dos fechas por igual.
vii. Comparar si una fecha es mayor a otra.
viii. Salir.
d. El programa debe entrar en un ciclo realizando la acción solicitada hasta que el
usuario seleccione la opción h.
Restricciones:
Para la opción "e", el valor de N será proporcionado por el usuario.
En las opciones "f" y "g", el programa deberá leer otra fecha que sea válida
antes de realizar la comparación.
Parte 1
A continuación se muestran una serie de preguntas acompañadas de un programa.
1. Ejecuten el programa en la computadora y con base en los resultados del mismo,
realicen lo que se indica para cada inciso:
a. Programa 1
Ejecuten el siguiente programa:
import java.io.*;
public class Referencias {
public static void main(String[] args) {
int arr[] = { 1, 2, 3, 4, 5};
System.out.println(arr);
}
}
Contesten las siguientes preguntas:
¿Qué despliega el programa?
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
¿Por qué se despliega eso en lugar de desplegarse el contenido del
arreglo?
¿Qué instrucciones agregarías al programa para que se despliegue el
contenido del arreglo?
b. Programa 2
Ejecuten el siguiente programa:
import java.io.*;
public class ejercicio {
public static void main(String[] args) throws IOException {
int [] arr1 = {1, 2, 3, 4, 5};
int [] arr2 = {1, 2, 3, 4, 5};
if (arr1 == arr2)
System.out.println("Los arreglos son iguales");
else System.out.println("Los arreglos NO son iguales");
} }
Contesten las siguientes preguntas:
¿Qué despliega el programa?
La comparación (arr1 == arr2) ¿qué es lo que está comparando?
¿Qué instrucciones agregarías para comparar el contenido de los dos
arreglos?
c. Programa 3
Ejecuten el siguiente programa:
import java.io.*;
public class ejercicio {
public static BufferedReader entrada = new BufferedReader(new InputStream
Reader(System.in));
public static void main(String[] args) throws IOException {
int [] arr1 = new int [5];
Lee(arr1);
System.out.println(arr1);
}
public static void Lee(int [] arr) throws IOException {
for (int r = 0; r < arr.length; r++)
arr[r]=Integer.parseInt(entrada.readLine());
}
}
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Contesten la pregunta en relación a los resultados del programa anterior.
¿Qué despliega el programa?
Todos los valores que se almacenaron en el arreglo dentro del
método Lee
El primer valor almacenado en el arreglo
Se genera una excepción (error) ya que no se ha indicado qué posición
del arreglo debe desplegar
La dirección de memoria en la que se encuentra el arreglo
d. Programa 4
Ejecuten el siguiente programa:
import java.io.*;
public class Ejercicios {
public static BufferedReader entrada =
new BufferedReader(new InputStreamReader(System.in));
public static void main(String[] args) throws IOException {
String cambia = "ESPERANZA";
reemplaza(cambia);
System.out.println(cambia);
}
public static void reemplaza (String cambia)
{ cambia = "SALUD"; }
}
Contesta la pregunta en relación a los resultados del programa anterior.
¿Qué realiza la siguiente secuencia de código?
Despliega la palabra ESPERANZA
Despliega la palabra SALUD
Genera un error porque no se puede modificar el contenido de la
variable cambia
Despliega la dirección en la que se encuentra el String cambia
e. Programa 5
Ejecuten el siguiente programa:
import java.io.*;
class Fraccion {
private int numerador;
private int denominador;
public Fraccion(){ numerador = 0; denominador = 1; }
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
public Fraccion(int n, int d) { numerador = n; denominador = d; }
public Fraccion (Fraccion m) {
numerador = m.numerador;
denominador = m.denominador;
}
public int getNumerador() { return numerador; }
public int getDenominador() { return denominador; }
public void setNumerador(int numerador) { this.numerador = numerador; }
public void setDenominador(int denominador) { this.denominador =
denominador; }
public void despliega() { System.out.println(numerador + "/" +
denominador); }
}
public class UsoFraccion {
public static void main(String[] args) {
Fraccion f = new Fraccion (3 ,5);
Fraccion w = new Fraccion (3, 5);
if ( f == w )
System.out.println("Fracciones iguales");
else
System.out.println("Fracciones diferentes");
}
}
Contesten las preguntas en relación a los resultados del programa anterior.
¿Qué despliega el programa?
La comparación (f == w), ¿qué es lo que está comparando?
¿Qué instrucciones agregarías para comparar el contenido de los dos objetos?
La instrucción: System.out.println(f); hace lo mismo que la instrucción:
f.despliega();
¿Por qué?
Parte 2
2. Reúnanse en equipo y realicen la siguiente aplicación:
3. Escriban la clase Fecha que contenga lo siguiente:
a. Variables de instancia: día, mes, año todas de tipo entero
b. Constructor que inicializa la fecha en 1 de Enero de 1900
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
c. Constructor que inicializar la fecha en el día, mes y año especificado por el
usuario
d. Método público getDia que regresa el valor de día
e. Método público getMes que regresa el valor de mes
f. Método público getAño que regresa el valor de año
g. Método público setDia que asigna a la variable día el valor pasado como
parámetro
h. Método público setMes” que asigna a la variable mes el valor pasado como
parámetro
i. Método público setAño que asigna a la variable año el valor pasado como
parámetro
4. Ahora escriban la clase Amigo que contenga lo siguiente:
a. 9Variables de instancia:
nombre, de tipo String para almacenar el nombre del amigo
fecNac, de tipo Fecha para almacenar su fecha de nacimiento
b. Constructor que inicializa el objeto con el nombre y fecha que se recibe como
parámetro
c. Método público getNombre que regresa el valor del nombre
d. Método público getFecha que regresa el valor de la fecha de nacimiento
e. Método público setNombre que asigna a la variable nombre el valor pasado
como parámetro
f. Método público setFecha que asigna a la variable fecNac el valor pasado como
parámetro
5. Construyan un programa de aplicación que realice lo siguiente:
a. Solicitar al usuario el nombre y fecha de nacimiento de un amigo
b. Crear un objeto de tipo Amigo e inicializarlo con los datos proporcionados por
el usuario
c. Solicitar al usuario la fecha del día de hoy
d. Desplegar lo siguiente:
Edad del amigo
Uno de los siguientes letreros: “Su cumpleaños ya pasó”, “Hoy es su
cumpleaños”, “Aún no llega su cumpleaños”
Parte 3
6. Escriban la clase Conjunto que cumpla con las siguientes características:
a. La clase tendrá dos atributos:
El arreglo de enteros valores el cual servirá para almacenar los
números del conjunto
La variable entera cantidad que indicará la cantidad de números que
tiene el conjunto
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
b. El constructor de la clase recibirá como parámetro la cantidad de casillas con
las que deberá crear el arreglo valores y a la variable cantidad se le asignará
un cero ya que el conjunto está vacío
c. El método público pertenece, el cual regresa el valor booleano true si el
número que recibe como parámetro se encuentra dentro del conjunto.
Regresará false en caso contrario
d. El método público agrega que recibe como parámetro el número que se
agregará al conjunto. Este método regresa el valor booleano false si el número
a agregar no cabe en el arreglo, en caso contrario debe regresar un true. Dado
que un conjunto no puede tener números repetidos, si el número a agregar ya
existe no debe agregarse al arreglo (aun así el método debe regresar un true)
e. El método público despliega el cual despliega todos los valores del conjunto en
una sola línea separados por un espacio en blanco
7. Al terminar de construir la clase, escribe un programa de aplicación que realice lo
siguiente:
a. Solicitar al usuario el tamaño del conjunto
b. Crear un conjunto del tamaño indicado
c. Entrar en un ciclo en el que leerá números que se deben ir agregando al
conjunto
d. Después de agregar cada número se debe desplegar el contenido del conjunto
e. El ciclo termina cuando se llena el conjunto
Nota: Considera que tu actividad debe estar documentada (proceso) y fundamentada.
Parte 1
Reúnanse en equipo y den solución a los siguientes ejercicios
1. Problemática del caso
Tienda Music and More
El dueño de la tienda Music and More los contacta porque sabe que ustedes son expertos
consultores. En la reunión les dice que necesita actualizarse y hacer automatizadas las ventas
de los CD de música de sus tiendas, por lo que les solicita un catálogo de música.
Les pide una aplicación de este catálogo para correr como piloto en una de sus tiendas, si el
sistema funciona y le gusta, se los comprará y será la herramienta que utilice en sus más de
200 tienda alrededor del país.
2. Diseño de las clases
Para el proyecto se requiere que escriban la clase de objetos y la aplicación que a
continuación se describen.
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
Escriban la clase CD que contenga lo siguiente:
a. Variables de instancia:
Nombre: Variable de tipo String que contendrá el nombre del CD.
Cantante: Variable de tipo String que almacenará el nombre del
cantante o grupo
Género: Variable de tipo String que guardará el género del CD
Costo: Variable de tipo double que tendrá el precio de venta del CD
b. Constructor que inicializa el objeto con el nombre, cantante, género y costo
que se envíen como parámetro
c. Método público getNombre que regresa el valor almacenado en nombre
d. Método público getCantante que regresa el valor de cantante
e. Método público getGenero que regresa el valor de género
f. Método público getCosto que regresa el valor de costo
g. Método público setNombre que asigna a la variable nombre el valor pasado
como parámetro
h. Método público setCantante que asigna a la variable cantante el valor pasado
como parámetro
i. Método público setGenero que asigna a la variable género el valor pasado
como parámetro
j. Método público setCosto que asigna a la variable costo el valor pasado como
parámetro
k. Método público despliega que despliega en consola la información del CD
4. Diseño de la aplicación
Escriban una aplicación para el catálogo de música de la tienda Music and more, dicha
aplicación debe de utilizar la clase CD de la siguiente manera:
a. Solicitar al usuario la cantidad de CD que se almacenarán
b. Crear un arreglo de CD con la capacidad especificada por el usuario
c. Leer la información de cada uno de los CD y almacenarla en los objetos del
arreglo
d. Desplegar el contenido del arreglo. Para esto, la aplicación debe contener un
método que reciba como parámetro el arreglo y despliegue en consola cada
uno de los objetos del mismo
Parte 2
4. El dueño de la tienda Music and More les pidió nuevamente una cita y les solicitó unos
cambios para la aplicación del catálogo de música, por lo cual tendrán que modificar la
aplicación que desarrollaron en la parte 1, realizando lo siguiente:
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
a. Agreguen el método busca. Este método recibe como parámetro el arreglo de
CD’s, solicita al usuario el nombre o parte del nombre del CD, realiza una
búsqueda en el arreglo y despliega la información completa del CD o una frase
indicando que no se encontró
b. Elaboren el método despliegaGenero el cual recibe como parámetro el arreglo
de CD’s y despliega la información completa de todos aquellos CD que sean
del género especificado por el usuario
c. Agreguen el método despliegaCosto el cual recibe como parámetro el arreglo
de CD’s, solicita al usuario el costo y despliega todos aquellos CD’s cuyo costo
es menor al indicado por el usuario
d. Agreguen a la aplicación un menú que le permita al usuario seleccionar la
operación a realizar (desplegar todo, busca, desplegar por género o desplegar
por costo) o bien terminar la aplicación
Parte 3
5. Un maestro de biología llega a su negocio de consultoría y les comenta que le interesa
mejorar la experiencia de aprendizaje con sus alumnos y desea enseñarles el tema de
los animales vertebrados, para eso quiere que desarrollen una aplicación en Java en
base al siguiente enunciado:
Los animales vertebrados son los más evolucionados del Reino Animal.
Poseen esqueleto interno con columna vertebral, o cuerda dorsal,
característica principal de estos animales, que sirve como sostén al
cuerpo y protege al sistema nervioso. Dos características que definen a
los vertebrados además de la anterior es el grupo (mamífero, ave, reptil,
etc.) al que pertenecen y el sonido que emiten. Como cualquier otro
animal tienen un peso y un nombre.
6. Para poder desarrollar la aplicación, es necesario que escriban la clase
abstracta Animal que contenga lo siguiente:
a. Variables de instancia: peso (int), nombre (String)
b. Constructor que inicializar el peso y el nombre por los valores especificados
por el usuario
c. Método público getPeso que regresa el valor de peso
d. Método público getNombre que regresa el valor de nombre
e. Método público setPeso que asigna a la variable peso el valor pasado como
parámetro
f. Método público setNombre que asigna a la variable nombre el valor pasado
como parámetro
g. Método abstracto say el cual regresa un valor String
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
7. Después deben escribir la clase Vertebrados como una clase derivada de la
clase Animal que contenga lo siguiente:
a. Variables de instancia: grupo (String), sonido (String)
b. Constructor que inicializar el peso, el nombre, el sonido y el grupo por los
valores especificados por el usuario. Este método debe utilizar super para
ejecutar el constructor de la clase base Animal
c. Método público say que regresa un String con el tipo de sonido que produce el
vertebrado.
d. Verifica el funcionamiento de tus clases con la siguiente aplicación:
public class pruebaanimal {
public static BufferedReader entrada =
new BufferedReader(new
InputStreamReader(System.in));
public static void main(String[] args) throws IOException {
Vertebrados [] vert = new Vertebrados [10];
vert[0] = new Vertebrados ("vaca", 100, "moo", "mamífero");
vert[1] = new Vertebrados ("gallo", 2, "kikiriqui", "ave");
vert[2] = new Vertebrados ("coyote", 15, "ahuuuuu", "mamífero");
vert[3] = new Vertebrados ("cocodrilo", 45, "ahhh", "reptil");
vert[4] = new Vertebrados ("pollito", 1, "piopio", "ave");
for (int k = 0; k < 5; k++) {
salida.println("El animal se llama:" + vert[k].getNombre());
salida.println("Pesa:" + vert[k].getPeso());
salida.println("y cuando se oye dice así: " + vert[k].say());
}
}
}
Nota: Considera que tu actividad debe estar documentada (proceso) y fundamentada.
Aplicación computacional en lenguaje Java para solucionar un problema mediante el
uso de clases y arreglos de objetos.
Instrucciones para realizar evidencia:80%
Como parte de la evidencia, analiza y da solución al siguiente problema:
1. Revisa la problemática del caso: Videoclub
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
El dueño de un videoclub sabe de ti a través de una red de networking, te contacta y te
informa que le interesa contratar tus servicios profesionales, pues te comenta que tiene
un problema: necesita mejorar la administración de su negocio, contar con la
elaboración de una aplicación para administrar las rentas de los dos tipos de productos
que maneja; videojuegos y películas.
Para todos los productos se tiene la siguiente información: nombre del producto, la
cantidad a pagar por rentar ese producto, cantidad de días que se presta al momento de
rentar y si en ese momento el producto está o no disponible.
Para cada una de las películas se tiene el género (acción, fantasía, drama, comedio y
aventura) y el año de producción.
Para los juegos se cuenta con el estilo (acción, deportes y aventuras) y la plataforma
(Xbox, Playstation, Wii) en la que se puede ejecutar.
2. Aplicación a realizar
Debes desarrollar una aplicación que permita realizar consultas y administrar las rentas
de los productos como se describe más adelante:
a. Realiza el diagrama de clase de acuerdo a la descripción anterior. El
diagrama debe incluir el nombre de la clase y las variables de instancia
tanto de la clase base como de las clases derivadas.
b. Construye la clase base y las clases derivadas las cuales deben incluir el
constructor y los métodosget y set para cada una de las variables de
instancia.
c. Construye una aplicación que emplee las clases que elaboraste en el
punto anterior y que realice lo siguiente:
Leer la cantidad de películas que proporcionará el usuario y
posteriormente leer la información de cada una de ellas: nombre,
costo de renta, días, género, año, rentado.
Leer la cantidad de videojuegos que proporcionará el usuario y
posteriormente leer la información de cada uno de ellos: nombre,
costo de renta, días, estilo, plataforma, rentado.
Nota: el campo rentado se refiere a si el producto está o no rentado (1 está rentado, 0 no
está rentado).
d. Permanecer en un ciclo ejecutando la acción solicitada por el usuario. La
acción se solicita a través de algunos de los siguientes comandos:
T/T: Despliega todos los productos
P/p: Despliega todas las películas
V/v: Despliega todos los videojuegos
Servicio de asesoría y resolución de ejercicios ciencias_help@hotmail.com
www.maestronline.com
S/s: Checar si una película está rentada
J/j: Verifica si un videojuego está o no rentado
C/c: Devuelve la cantidad de películas que están rentadas
X/x: Indica la cantidad de videojuegos cuya plataforma es Xbox
U/u: Termina el programa
Recommended