import java.io.*;

/*Los métodos sobrecargados tienen igual nombre
y se distinguen por el tipo de argumento en la llamada*/

public class ej_metodos_sobrecargados
{

public static void main (String[] args){

InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader (isr);
int num,opcion;
double num1;
try
{

System.out.println("------Programa que eleva al cubo un numero------");
System.out.println("1. Elevar al cubo un numero entero--------------");
System.out.println("2. Elevar al cubo un numero con punto decimal---");
System.out.print("Selecciona una opcion: ");
opcion=Integer.parseInt(br.readLine());
switch(opcion)
{


case 1: System.out.print("Inserta el numero entero a elevar: ");
num=Integer.parseInt(br.readLine());
System.out.println("El numero:"+ num +" elevado al cubo es: "+
cubo(num));
break;
case 2: System.out.print("Inserta el numer con punto decimal a elevar:");
num1=Double.parseDouble(br.readLine());
System.out.println("El numero:"+ num1 +" elevado al cubo es: "+
cubo(num1));
break;
default:System.out.print("Selecciono una opcion no valida");


}


}
catch( Exception e)
{
System.out.println("Error en los datos");

}
}


public static int cubo(int num)
{
return num*num*num;
}


public static double cubo(double num)
{
return num*num*num;
}


}