Programa que calcula el área y el volumen de un cilindroResultado de imagen para area de un cilindro

Las fórmulas para el cilindro:
Área = 2 · π · r ( h + r )
Volumen = π · r 2 · h
Utilizaremos la clase JOptionPane perteneciente a la librería Swing para el manejo de interfaces gráficas para la introducción del radio y la altura del cilindro, mediante el método showInputDialog, y para mostrar el mensaje con el área y el volumen resultante, con el método showMessageDialog.

En este caso al cuadro de diálogo del resultado le pasamos como parámetro un JLabel de la librería Swing. Para cambiarle el tipo de fuente al JLabel, utilizaremos la clase Font de la librería Awt. Creamos un objeto de la clase Font y se lo asignamos al objeto de la clase JLabel creada (lblVolumen.setFont(fuente)).
En el cálculo del área y del volumen, utilizaremos de la clase Math, el método estático para calcular potencias Math.pow(a,b), (a es la base y b el exponente) y la constante Math.PI, para obtener el número π.
Con String.format(“%.2f”, porcentaje) limitamos la salida del porcentaje a 2 decimales.


import java.awt.Font;

import javax.swing.JLabel;
import javax.swing.JOptionPane;

public class AreaVolumenCilindro {

public static void main(String[] args) {

double radio, altura, area, volumen;

String strRadio = JOptionPane.showInputDialog(null,
"Introduce el radio de la base del cilindro (cm)",
"Área y Volumen de un cilindro",
JOptionPane.QUESTION_MESSAGE);
radio = Double.parseDouble(strRadio);
String strAltura = JOptionPane.showInputDialog(null,
"Introduce la altura del cilindro (cm)",
"Área y Volumen de un cilindro",
JOptionPane.QUESTION_MESSAGE);
altura = Double.parseDouble(strAltura);

area = calcularAreaCilindro(radio, altura);
volumen = calcularVolumenCilindro(radio, altura);
String textoMostrar = "El área es " + String.format("%.2f", area) + " cm cuadrados";
textoMostrar += " y el volumen es " + String.format("%.2f", volumen) + " cm cúbicos.";

JLabel lblVolumen = new JLabel(textoMostrar);
Font fuente = new Font("Arial", Font.PLAIN, 17);
lblVolumen.setFont(fuente);

JOptionPane.showMessageDialog(null,
lblVolumen,
"Área y Volumen del cilindro ",
JOptionPane.INFORMATION_MESSAGE);

}

static double calcularAreaCilindro(double radio, double altura){
//Area de un cilindro = 2 Π r ( h + r )
return 2 * Math.PI * radio * (altura + radio);
}

static double calcularVolumenCilindro(double radio, double altura){
//Volumen de un cilindro = Π r2 h
return Math.PI * Math.pow(radio, 2) * altura;
}
}