Autor Tema: Java calcular área círculo. Crear constantes usando static y final. CU00673B  (Leído 4898 veces)

dferna

  • Sin experiencia
  • *
  • Mensajes: 25
    • Ver Perfil
Buenas  ;)

Aquí dejo la resolución al ejercicio CU00673B del curso de programación Java con IDE BlueJ, de calcular el área y la longitud de un circulo a través del radio.

Clase Test donde creo un objeto Circulo y le calculo su área y longitud a través del radio introducido por el usuario.

Código: [Seleccionar]
package aplicacion;

import circulo.Circulo;
import utilidades.Utilidades;

public class Test {

public static void main(String[] args) {

Circulo circulo = new Circulo();
Utilidades utilidades = new Utilidades();
double numeroIntroducido = 0;
double area = 0.0;
double longitud = 0.0;

System.out.println("En esta aplicación vamos a proceder a calcular el área y la longitud de un círculo a través de su radio");
System.out.println("Por favor ingrese el radio:");
numeroIntroducido = utilidades.pideNumero();
circulo.setRadio(numeroIntroducido);
area = circulo.calcularAreaCirculo();
longitud = circulo.calcularLongitudCirculo();
System.out.println("El area del circulo es: "+area+" y la longitud es: "+longitud+" metros");
}

}


Clase Circulo con los métodos para calcular el área y la longitud del círculo

Código: [Seleccionar]
package circulo;

public class Circulo {

private static final double NUMEROPI = 3.1416;
private double radio;

public double getNumeroPi(){
return NUMEROPI;
}

public double getRadio() {
return radio;
}

public void setRadio(double valorRadio) {
radio = valorRadio;
}

public double calcularAreaCirculo(){
double area = 0.0;
area = Math.pow(radio,2)*NUMEROPI;
return area;
}

public double calcularLongitudCirculo(){
double longitud = 0.0;
longitud = 2*NUMEROPI*radio;
return longitud;
}

}



Clase Utilidades que contiene los métodos de entrada de datos.

Código: [Seleccionar]
package utilidades;

import java.util.Scanner;

public class Utilidades {

public int pideNumero() {

Scanner sc = new Scanner(System.in);
int entradaTeclado = sc.nextInt();

return entradaTeclado;
}

public String pideCadena() {

Scanner sc = new Scanner(System.in);
String entradaTeclado = sc.nextLine();

return entradaTeclado;
}
}

Aquí dejo también una prueba de funcionamiento:

Código: [Seleccionar]
En esta aplicación vamos a proceder a calcular el área y la longitud de un círculo a través de su radio
Por favor ingrese el radio:
3
El area del circulo es: 28.2744 y la longitud es: 18.8496 metros

Saludos  :)
« Última modificación: 17 de Junio 2017, 13:15 por Alex Rodríguez »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Resolucion ejercicio crear circulo CU00673B
« Respuesta #1 en: 08 de Abril 2017, 18:37 »
Hola dferna.

Funciona bien, solo comentarte lo mismo que en el ejercicio anterior con el nombre de la clase Utilidades y en este caso también comentar que la clase Circulo quedaría más completa si hubieses añadido un constructor para inicializar el valor del radio y por qué no otro en el que se reciba el valor del radio.

Saludos. ;D

dferna

  • Sin experiencia
  • *
  • Mensajes: 25
    • Ver Perfil
Re:Java. Crear constantes usando static y final. CU00673B
« Respuesta #2 en: 08 de Abril 2017, 22:39 »
Hola pedro  ;)

Gracias por la corrección del ejercicio y por darme esos consejos, he rediseñado la aplicación introduciendo los constructores como me has indicado, he dejado las dos soluciones en la misma aplicación, eso si comentada la antigua para que se observe que hacen los mismo de dos maneras diferentes.

Aqui dejo el código que he modificado.
Código: [Seleccionar]
package aplicacion;

import circulo.Circulo;
import utilidades.EntradaDatos;

public class Test {

public static void main(String[] args) {

Circulo circulo = new Circulo();

EntradaDatos entradaDatos = new EntradaDatos();
double numeroIntroducido = 0;
double area = 0.0;
double longitud = 0.0;

/*System.out.println("En esta aplicación vamos a proceder a calcular el área y la longitud de un círculo a través de su radio");
System.out.println("Por favor ingrese el radio:");
//Resolución ejercicio pidiendo los datos por teclado y utilizando el set para dar el valor del radio al objeto
numeroIntroducido = entradaDatos.pideNumero();
circulo.setRadio(numeroIntroducido);
area = circulo.calcularAreaCirculo();
longitud = circulo.calcularLongitudCirculo();
System.out.println("El area del circulo es: "+area+" y la longitud es: "+longitud+" metros");*/

//Resolución del ejercicio utilizando el constructor sobrecargado en el que creo el objeto con el valor del radio ya establecido con el
//valor que ha introducido el usuario por teclado de esta manera no se tiene que utilizar el método set del objeto.
System.out.println("En esta aplicación vamos a proceder a calcular el área y la longitud de un círculo a través de su radio");
System.out.println("Por favor ingrese el radio:");
numeroIntroducido = entradaDatos.pideNumero();
Circulo circulo2 = new Circulo(numeroIntroducido);
area = circulo2.calcularAreaCirculo();
longitud = circulo2.calcularLongitudCirculo();
System.out.println("El area del circulo es: "+area+" y la longitud es: "+longitud+" metros");
}

}


Clase Circulo
Código: [Seleccionar]
package circulo;

public class Circulo {

private static final double NUMEROPI = 3.1416;
private double radio;

public Circulo(){
radio = 0.0;
}

public Circulo(double valorRadio){
radio = valorRadio;
}

public double getNumeroPi(){
return NUMEROPI;
}

public double getRadio() {
return radio;
}

public void setRadio(double valorRadio) {
radio = valorRadio;
}

public double calcularAreaCirculo(){
double area = 0.0;
area = Math.pow(radio,2)*NUMEROPI;
return area;
}

public double calcularLongitudCirculo(){
double longitud = 0.0;
longitud = 2*NUMEROPI*radio;
return longitud;
}

}


Saludos  ;)

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".