Software">
Practica 4 POO
Practica 4 POO
Practica 4 POO
Laboratorios de computación
salas A y B
Profesor: M.I .Ernesto Alcántara Concepción
Grupo: 02
Semestre: 2021-1
Observaciones:
CALIFICACIÓN:______
ÍNDICE
pág.
Objetivo…………………………………………..…………………………………...…......(3)
Introdución…………………………………………………………….……..……………...(3)
Actividades…………………………………………………………………………...……...(4)
Ejercicio 1………………………………………………………………………..…..(4)
Ejercicio 2……………………………………………………………………...…….(5)
Ejercicio 3………………………………………………………………………...….(6)
Ejercicio 4…………………………………………………………………………....(8)
Ejercicio 5…………………………………………………………………………....(11)
Conclusion………………………………………………...………..…………………..........(13)
Referencias…………………………………………………..………………..……………. (13)
2
OBJETIVO.
Aplicar los conceptos básicos de la programación orientada a objetos en un lenguaje de
programación.
INTRODUCCIÓN.
La Programación Orientada a Objetos (POO) es un paradigma de programación que utiliza la
abstracción para crear modelos de objetos basados en el mundo real.
Objeto
El objeto es el elemento principal de la programación orientada a objetos y alrededor del cual gira
este paradigma. Los objetos pueden contener información y código relacionado, lo cual representa
información acerca de lo que se está tratando de modelar, así como la funcionalidad o
comportamiento que deseamos que tenga. Cada objeto, de igual modo que la entidad de la vida real
a la que representa, tiene un estado (es decir, unos atributos con unos valores concretos) y un
comportamiento (es decir, tiene funcionalidades o sabe hacer unas acciones concretas).
Clase
Una clase equivale a la generalización de un tipo específico de objetos. Es una plantilla que define
las variables y los métodos que son comunes para todos los objetos de un cierto tipo, describe los
atributos y operaciones de un objeto.
Mensajes
Los objetos interactúan enviando mensajes unos a otros. Tras la recepción de un mensaje el objeto
actuará. Los objetos de un programa interactúan y se comunican entre ellos por medio de mensajes.
Métodos
Un método es básicamente lo mismo que una función pero asociado a un objeto, especifican el
comportamiento de la clase y sus instancias.
Métodos sobrecargados
Son métodos en una misma clase que pueden declararse con el mismo nombre,
realizan tareas similares pero reciben diferentes tipos de parámetros.
Constructores
3
ACTIVIDADES.
❖ Crear clases.
❖ Crear objetos o instancias.
❖ Invocar métodos.
❖ Utilizar constructores.
Ejercicio 1. (Clase Rectangulo) Cree una clase llamada Rectangulo. La clase debe tener los
atributos longitud y anchura, cada uno con un valor predeterminado de 1. Debe tener métodos para
calcular el perímetro y el área del rectángulo. Debe tener métodos establecer y obtener para longitud
y anchura. Los metodos establecer deben verificar que longitud y anchura sean números de punto
flotante mayores de 0.0, y menores de 20.0. Escriba un programa para probar la clase Rectangulo.
Carlos De los Cobos. Primero se definió la clase Rectángulo donde se colocan como atributos los
lados del mismo, y, con estos, se calculan el área y perímetro. En la clase de Prueba, simplemente
se crea una instancia Rectángulo y, por teclado, se introducen los lados del rectángulo para calcular
tanto área como perímetro.
4
Scanner entrada = new Scanner(System.in);
Rectangulo rec1 = new Rectangulo();
System.out.println("Introduzca la longitud del rectangulo: ");
rec1.establecerLong(entrada.nextFloat());
System.out.println("Introduzca la anchura del rectangulo: ");
rec1.establecerAnch(entrada.nextFloat());
System.out.printf("El area del rectangulo es: %.2f y el perimetro:
%.2f",rec1.area(rec1.obtenerLong(),rec1.obtenerAnch()),rec1.perimetro(rec1.obtener
Long(),rec1.obtenerAnch()));
}
}
Ejercicio 2. Escriba una aplicación VolumenEsfera que pida al usuario el radio double d e una
esfera, que llame a volumenEsfera para calcular el volumen y muestre el resultado en pantalla
Mariana Rojas. Se creó una clase CalculoVolumen con atributos radio y volumen que contiene al
método volumenEsfera que recibe como parámetro el radio, calcula e imprime el volumen de dicha
esfera. Después en la clase VolumenEsfera en su método main se crea un objeto radio de tipo
CalculoVolumen y solicita al usuario ingresar el radio, se llama al método volumenEsfera mediante
el objeto creado.
import java.util.Scanner;
radio.volumenEsfera(entrada.nextDouble());
}
5
}
Ejercicio 3. Escriba un método llamado cuadradoDeAsteriscos que muestre un cuadrado relleno
(el mismo número de filas y columnas) de asteriscos cuyo lado se especifique en el parámetro
entero lado. Por ejemplo
*****
*****
*****
*****
*****
Incorpore este método a una Clase que lea un valor entero para el parámetro lado que introduzca el
usuario, y despliegue los asteriscos con el método cudradoDeAsteriscos.
Said Dominguez. Se creó el método Cuadrado de Asteriscos que mediante un ciclo for nos genera
un cuadrado del tamaño de asteriscos según el número que ingrese el usuario. Se crea un objeto y se
llama al método mediante la clase Cuadrado y se le pide al usuario un número entero para obtener
el cuadrado en pantalla.
import java.util.Scanner;
int lado;
Scanner entrada = new Scanner(System.in);
CuadradoDeAsteriscos c = new CuadradoDeAsteriscos();
System.out.println("introduzca un numero entero: ");
lado = entrada.nextInt();
c.CuadradoDeAsteriscos(lado);
}
}
6
Carlos De los Cobos. Para lograr imprimir los asteriscos correctamente, se utilizó un ciclo for que
imprime renglón a renglón según el número de renglones se hayan introducido. Después se crea un
objeto Cuadrado, donde se llama al método para imprimir los asteriscos.
public class Cuadrado{
private short lado;
public Cuadrado(short lado){
this.lado = lado;
}
public short obtLado(){
return lado;
}
public void cuadradoDeAsteriscos(short lado){
short i = 0;
short cont = 0;
for(i=0;i<lado;i++){
System.out.printf("*");
if(i==lado-1){
System.out.printf("\n");
i=-1;
cont++;
}
if(cont==lado){
break;
}
}
}
}
import java.util.Scanner;
7
Ejercicio 4. Defina un método llamado hipotenusa que calcule la longitud de la hipotenusa de un
triángulo, cuando se proporcionen las longitudes de los otros dos lados. El método debe tomar dos
argumentos de tipo double y devolver la hipotenusa como un valor double. Incorpore este método a
una aplicación que lea los valores lado1 y lado2 y que realice el cálculo en el método hipotenusa.
Compruebe los resultados con el método hypot de la clase Math
Luis Zuñiga. Se crearon dos métodos estáticos ya que no se puede llamar a un método no estático
desde uno que lo es. La clase recibe dos parámetros desde consola sin preguntar al usuario así que
se deben mandar al ejecutarlo (quería intentar hacerlo de esa forma). El resto es simplemente el
álgebra de calcular la hipotenusa mediante el teorema de Pitágoras usando operaciones básicas.
El programa regresa los resultados usando la función Math.hypot y la función creada para
comprobar.
class CalcHipot{
public static void main(String[] var) {
Double d1= new Double(var[0]);
Double d2= new Double(var[1]);
lados(d1.doubleValue(),d2.doubleValue());
}
static void lados(double l1, double l2) {
System.out.printf("El lado 1 es %.4f, el lado 2 es %.4f",l1,l2);
System.out.printf("\nLa hipotenusa usando hipot vale
%.4f",hipot(l1,l2));
System.out.printf("\nLa hipotenusa usando Math.hypot vale %.4f",
Math.hypot(l1, l2));
}
static double hipot(double l1,double l2) {
double h;
h=Math.sqrt((l1*l1)+(l2*l2));
return h;
}
}
8
Mariana Rojas. Se creó un clase CalculoHipotenusa son atributos resultado, lado1 y lado2,
dentro de esta un método hipotenusa que calcula la hipotenusa de un triángulo mediante el teorema
de pitágoras y además mediante una estructura condicional comprueba si el resultado obtenido con
el método hypot de la biblioteca Math es el mismo que se obtuvo en el método hipotenusa. En la
clase Hipotenusa, dentro del método main se crea un objeto de tipo CalculoHipotenusa, se solicitan
las longitudes de los lados del triángulo y se llama al método hipotenusa con el objeto creado.
h = Math.hypot(lado1,lado2);
if (h == resultado) {
System.out.printf("\nComprobacion exitosa, la aplicacion es
correcta\n\n");
}
else {
System.out.printf("ERROR DE APLICACION\n\n");
}
}
}
import java.util.Scanner;
9
Said Domínguez. Se creó un método hipotenusa que usa la clase Math para hacer el calculo directo
de los valores. Posteriormente se crea un objeto y se llama a este método en la clase
PruebaHipotenusa para que el usuario ingrese el valor de los catetos y nos muestre un resultado en
pantalla. Asimismo se hizo la comprobación con la función Math.hypot.
10
Ejercicio 5. Escribe un metodo llamado puntosCalidad que reciba como entrada el promedio de un
estudiante y que devuelva 4 si el estudiante se encuentra entre 90 y 100, 3 si se encuentra entre 80 y
89, 2 si el promedio se encuentra entre 70 y 79, 1 si el promedio se encuentra entre 60 y 69, y 0 si el
promedio es menor a 60. Incorpore el método en una aplicación que reciba como entrada un valor del usuario
y muestre el resultado.
Carlos De los Cobos. Se realizó con varias sentencias if, para poder abarcar todos los posibles
casos del promedio. Para cada uno se retorna cierto valor, si el promedio ingresado se sale del rango
esperado, se indica.
11
Luis Zuñiga. Se crearon dos funciones, una recibe los datos, mientras otra consta de un operador
SWITCH para realizar una comparación. En la operación de SWITCH previamente divide sobre
diez para obtener un número con el cual pueda compararse el resultado en el mismo. Si la respuesta
es mayor a 8, este solo imprime el número 4 sin entrar al SWITCH, de lo contrario realiza las
comparaciones hasta llegar al 6, donde si no entro en otra opcion regresa un 0 por default.
import java.util.Scanner;
class Puntos{
public static void main(String[] tar) {
Scanner scan =new Scanner(System.in);
int prom,cal;
System.out.println("Indique el promedio del alumno: ");
prom=scan.nextInt();
cal=puntCalidad(prom);
System.out.printf("La calidad del estudiante es: %d", cal);
}
static int puntCalidad(int x) {
int r;
r=x/10;
if (r>8) {
return 4;
}else switch(r) {
case(8):
return 3;
case(7):
return 2;
case(6):
return 1;
default:
return 0;
}
}
12
CONCLUSIÓN.
Las clases son el módulo principal de la programación orientada a objetos, y permiten crear desde
ellas las operaciones y variables necesarias para poder trabajar de forma fluida. Sin embargo hay
clases que en otros lenguajes se manejan como datos primitivos como es el caso de las cadenas de
caracteres (String) que requieren un conjunto de métodos específicos ya integrados en ellas para
poder ser ocupadas. Al momento de modelar una clase se debe plantear bien qué es lo que se
necesita hacer en particular para poder optimizar el funcionamiento de la misma. De igual manera
se debe tener una idea sólida de cómo se pretende que funcionen los métodos para que de esta
forma sea más fácil su implementación.
Por lo tanto, la creación de objetos, métodos y constructores son fundamentales en el uso adecuado
del paradigma de programación del lenguaje Java, se logró hacer diferentes programas en donde se
crearon métodos y objetos en una clase y leerlos mediante otra clase del mismo tipo, así obteniendo
un resultado más ordenado.
REFERENCIAS.
https://medium.com/@mauriciogc/javascript-programación-orientado-a-objetos-fundamentos-4017
46946459
https://catedu.gitbooks.io/programacion-orientada-a-objetos-java/content/mtodos.html
http://lcp02.fi-b.unam.mx
13