Tarea Semana 4 POO I

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 8

Tarea Semana 4

PROGRAMACIÓN ORIENTADA A OBJETOS I

27/04/2021
DESARROLLO DE LA TAREA:

Se requiere crear una clase llamada persona que siga las siguientes condiciones:

• Sus atributos son: nombre, apellido, edad, RUT, sexo (H hombre, M mujer), peso y
altura. No queremos que se accedan directamente a ellos. Piensa que modificador de
acceso es el más adecuado, también su tipo.
• Por defecto, todos los atributos menos el RUT serán valores por defecto según su tipo
(0 números, cadena vacía para String, etc.). Sexo será hombre por defecto, usa una
constante para ello.
• Se implantaran varios constructores:

o Un constructor por defecto.


o Un constructor con el nombre, edad y sexo, el resto por defecto.
o Un constructor con todos los atributos como parámetro.

• Los métodos que se implementaran son:

o CalcularIMC(): calculará si la persona está en su peso ideal (peso en


kg/(altura^2 en m)), si esta fórmula devuelve un valor menor que 20, la función
devuelve un -1, si devuelve un número entre 20 y 25 (incluidos), significa que
está por debajo de su peso ideal la función devuelve un 0 y si devuelve un valor
mayor que 25 significa que tiene sobrepeso, la función devuelve un 1. Te
recomiendo que uses constantes para devolver estos valores.
o esMayorDeEdad(): indica si es mayor de edad, devuelve un booleano.
o comprobarSexo(char sexo): comprueba que el sexo introducido es correcto. Si
no es correcto, será H. No será visible al exterior.
o generRUT (): genera un número aleatorio de 8 cifras más un digito verificador.
Este método será invocado cuando se construya el objeto. Puedes dividir el
método para que te sea más fácil. No será visible al exterior.
o Métodos set de cada parámetro, excepto de RUT.

Debe crear un objeto o instancia para la clase Persona


Desarrollo

En la imagen se aprecia la creación de la Clase Persona. Primero, se declaran sus atributos


(nombre, apellido, rut, sexo, edad, peso y altura) con sus valores por defecto. Luego, se
declaran las constantes para utilizar con el atributo sexo.

En tercer término, se declaran los tres constructores solicitados:

 Por defecto (sin parámetros), el cual solo invoca a método para obtener un rut
aleatorio.
 El segundo, con algunos parámetros que invoca métodos set para asignar valores
solamente a algunos atributos de la clase.

 El tercero que solicita a todos los métodos para inicializar y asignar valores a todos los
parámetros de la clase.
En la segunda imagen de captura de pantalla, se muestra la declaración de métodos set para
asignar valores a atributos de la clase Persona. Nótese que setSexo() invoca a
comprobarSexo() para limitar a sólo dos opciones la asignación correspondiente.

Los parámetros respectivos coinciden con los tipos de atributos que se desean establecer.

Definiciones de métodos para establecer IMC y mayoría de edad.


Método para comprobar sexo comprobarSexo(). Si es distinto de masculino o femenino, por
defecto retorna el valor masculino. Para ello, utiliza contantes definidas y presentadas
anteriormente (MASC y FEM).

Método para generar rut generaRut(). Posee dos variables locales:

 numeroRut que se le asigna un valor entero aleatorio entre 1 y 99999999.


 dvRut que se le asigna un valor entero aleatorio entre 0 y 9.

Finalmente, asigna el valor de la concatenación de valores anteriores convertidos a String


mediante valueOf. Y separados entre ellos por carácter guión.
Declaración de función Main()

Dividida en tres secciones, la primera muestra en consola (pantalla) el resultado de crear una
instancia por defecto de la clase Persona declarando un objeto P.

La segunda sección muestra en consola la creación de una instancia objeto Q de la clase


Persona, mediante el segundo constructor definido para ello.

La tercera y última sección de main() muestra en consola los atributos de la instancia objeto R
de la clase Persona, donde se requieren todos los parámetros.
Bibliografía
[Haga triple clic en cualquier parte de este párrafo para escribir la primera referencia

bibliográfica.]

Instrucciones para la sección de las citas bibliográficas:


Escriba la bibliografía aquí en orden alfabético (empezando por el apellido del primer autor o, de
no haber autor, por la primera palabra del título). Esta página ya está formateada con sangrías
francesas. Incluya sólo las citas bibliográficas a las que haya hecho referencia en su trabajo y
asegúrese de incluir todas las citas bibliográficas a las que se haya referido en el mismo.

Ejemplos de un artículo:

Apellido, A. A., Apellido, B. B., y Apellido, C. C. (año). Título del artículo específico. Título
de la Revista, número de la revista, número de página.
https://doi.org/xx.xxxxxxxxxx

Lee, H. W. (2005). Los factores que influyen en los expatriados. Journal of American Academy of
Business, 6(2), 273-279.

Osorio-Delgado, M. A., Henao-Tamayo, L. J., Velásquez-Cock, J. A., Cañas-Gutiérrez, A. I.,


Restrepo-Múnera, L. M., Gañán-Rojo, P. F., Zuluaga-Gallego, R. O., Ortiz-Trujillo, I C. y
Castro-Herazo, C. I. (2017). Aplicaciones biomédicas de biomateriales poliméricos.
DYNA, 84(201), 241-252. https://doi.org/10.15446/dyna.v84n201.60466

Nota: Si el artículo de la revista no tiene un DOI y proviene de una base de datos de investigación académica,
finalice la referencia después del rango de páginas. No incluya información de la base de datos en la
referencia. La referencia en este caso es la misma que para un artículo de revista impresa. Si el artículo de la
revista no tiene un DOI, pero tiene una URL que resolverá para los lectores (por ejemplo, es de una revista en
línea que no forma parte de una base de datos), incluya la URL del artículo al final de la referencia, en vez del
DOI.

Ejemplos de un texto:

Apellido, N. N. (año). Título del texto. Editorial. http://www.dirección.com

McShane, S. L., y Von Glinow, M. (2004). Organizational behavior: Emerging realities for the
workplace. The McGraw-Hill Companies.

Panza, M. (2019). Números: elementos de matemáticas para filósofos.  Universidad Del Valle.


https://www.reddebibliotecas.org.co/

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy