Problema
1.-
Elaborar
un programa que calcule el área y perímetro de 3 rectángulos y 3 triángulos.
- Diagrama UML:
NOTA: El contenido de los siguientes programas están codificados en NetBeans.
- Programación en Java:
{
private int base;
private int altura;
private int área;
private int perímetro;
public int getBase() {
return base;
}
public void setBase(int base) {
this.base = base;
}
public int getAltura() {
return altura;
}
public void setAltura(int altura) {
this.altura = altura;
}
public int getArea() {
return area;
}
public void setArea(int area) {
this.area = area;
}
public int getPerimetro() {
return perimetro;
}
public void setPerimetro(int perimetro) {
this.perimetro = perimetro;
}
// metodos del UML
public void captura()
{
base=Integer.parseInt(JOptionPane.showInputDialog("Base del rectangulo: "));
altura=Integer.parseInt(JOptionPane.showInputDialog("Altura del rectangulo: "));
}
public void calcularArea()
{
area= base* altura;
}
public void calcularPerimetro()
{
perimetro=base+base+altura+altura;
}
public void imprimir()
{
JOptionPane.showMessageDialog(null,"El area del rectangulo es: " + area);
JOptionPane.showMessageDialog(null,"El perimetro del rectangulo es: " + perimetro);
}
}
2.- Aquí comienza la clase de Triangulo:
2.- Aquí comienza la clase de Triangulo:
public class Triangulo
{
private int base;
private int altura;
private int area;
private int perimetro;
public int getBase() {
return base;
}
public void setBase(int base) {
this.base = base;
}
public int getAltura() {
return altura;
}
public void setAltura(int altura) {
this.altura = altura;
}
public int getArea() {
return area;
}
public void setArea(int area) {
this.area = area;
}
public int getPerimetro() {
return perimetro;
}
public void setPerimetro(int perimetro) {
this.perimetro = perimetro;
}
// metodos del UML
public void captura()
{
base=Integer.parseInt(JOptionPane.showInputDialog("Base del triangulo "));
altura=Integer.parseInt(JOptionPane.showInputDialog("Altura del triangulo "));
}
public void calcularArea()
{
area= (base* altura) /2;
}
public void calcularPerimetro()
{
perimetro=base + altura + altura;
}
public void imprimir()
{
JOptionPane.showMessageDialog(null,"El area del triangulo es: " + area);
JOptionPane.showMessageDialog(null,"El perimetro del triangulo es: " + perimetro);
}
}
{
private int base;
private int altura;
private int area;
private int perimetro;
public int getBase() {
return base;
}
public void setBase(int base) {
this.base = base;
}
public int getAltura() {
return altura;
}
public void setAltura(int altura) {
this.altura = altura;
}
public int getArea() {
return area;
}
public void setArea(int area) {
this.area = area;
}
public int getPerimetro() {
return perimetro;
}
public void setPerimetro(int perimetro) {
this.perimetro = perimetro;
}
// metodos del UML
public void captura()
{
base=Integer.parseInt(JOptionPane.showInputDialog("Base del triangulo "));
altura=Integer.parseInt(JOptionPane.showInputDialog("Altura del triangulo "));
}
public void calcularArea()
{
area= (base* altura) /2;
}
public void calcularPerimetro()
{
perimetro=base + altura + altura;
}
public void imprimir()
{
JOptionPane.showMessageDialog(null,"El area del triangulo es: " + area);
JOptionPane.showMessageDialog(null,"El perimetro del triangulo es: " + perimetro);
}
}
{
public static void main(String []args)
{
//declarando los objetos
Rectangulo r1, r2, r3;
//creando los objetos
r1=new Rectangulo();
r2=new Rectangulo();
r3=new Rectangulo();
r1.captura();
r1.calcularArea();
r1.calcularPerimetro();
r1.imprimir();
r2.captura();
r2.calcularArea();
r2.calcularPerimetro();
r2.imprimir();
r3.captura();
r3.calcularArea();
r3.calcularPerimetro();
r3.imprimir();
Triangulo t1, t2, t3;
t1= new Triangulo();
t2= new Triangulo();
t3= new Triangulo();
t1.captura();
t1.calcularArea();
t1.calcularPerimetro();
t1.imprimir();
t2.captura();
t2.calcularArea();
t2.calcularPerimetro();
t2.imprimir();
t3.captura();
t3.calcularArea();
t3.calcularPerimetro();
t3.imprimir();
}
}
* En el código verán que aparece: public int getBase() y public void setBase(int base) la palabra base es el atributo o la variable y aparece por que los atributos se encapsulan.
¿Que es y para que sirve encapsular los atributos?
El encapsulamiento consiste en unir en la Clase las características y
comportamientos, esto es, las variables y métodos. Es tener todo esto es una
sola entidad. En los lenguajes estructurados esto era imposible. Es evidente
que el encapsulamiento se logra gracias a la abstracción y el ocultamiento.
El objetivo del encapsulamiento, al no permitir que un miembro de una
clase sea accesible por todo el mundo, es evitar que los usuarios de una clase
realicen operaciones no permitidas, como llamar a métodos que están pensados
solamente para ser utilizados desde dentro de la clase, o asignar
arbitrariamente valores a los miembros dato, de tal manera que los objetos
tomen un estado corrupto. Digamos que la encapsulación sirve para:
1. Evitar errores lógicos de programación.
2. Aislar lo que el usuario de la clase necesita conocer y le es útil,
de los detalles de implantación.
3. Impedir que el estado de un objeto (conjunto de valores que toman los
miembros dato de ese objeto durante un intervalo de tiempo), sea erróneo.
4. Programar de una manera más elegante y minimista.
5. Facilitar el uso de la clase al resto de los programadores.
Lo veremos enseguida:
= Después verán el siguiente recuadro:
![]() |
= Y al final aparecerá codificado de la siguiente manera, y asi llegamos al final de como encapsular atributos. =
* Al correr el programa es así como aparecen los recuadros en donde se piden los datos.
* Primero se pide el valor de la altura del rectángulo.
* Después el área del rectángulo.
* Aquí es donde ya se calculo el área del rectángulo.
* Aquí es donde ya se calculo el perímetro del rectángulo.
* Después se pide el valor de la altura del triangulo.
* Aquí es donde ya se calculo el perímetro del rectángulo.
* Aquí es donde ya se calculo el área del rectángulo.
Conclusión
Usar
los diagramas UML y en la forma que se programa es muy fácil poder programar y más
que nada nos ahorramos tiempo cosa que es muy importante en el ámbito ya sea
laboral o estudiantil.
Publicado por: Dickner Steven Barrios & Yenifer Mina Castillo
Publicado por: Dickner Steven Barrios & Yenifer Mina Castillo
No hay comentarios:
Publicar un comentario