[ Foro de Java ]

ejercicio 9.3.1

06-Sep-2018 14:32
Invitado (asisy2k)
2 Respuestas

/*  version 1.00 2018/9/5  */

import java.io.*;

class CrearFuncion {    

/*9.3.1: Crea una función que calcule el cubo de un número
    real (float) que se indique como parámetro. El resultado deberá ser otro
    número real. Pruébala para calcular el cubo de 3.2 y el de 5.*/
   
  //referencia
  /*System.out.print( "Cinco elevado al cubo: ");
  //System.out.println( Math.pow(5.0,3.0) );
 //me muestra el mismo mensaje de error que el q tengo en este codigo
 
  //funcion
   public static void cubo(float parametro){
  float operacion = parametro*parametro*parametro;
  System.out.println( operacion );
  }
 
  //main estructura de nuestro programa
   public static void main (String[] args) {
 //mando llamar la funcion
   cubo(3.2);
   }
}

con el 5 si trabaja pero con 3.2 NO manda este error
error: incompatible types: possible lossy conversion from double to float
ya intente varias cosas pero ya me atore


08-Sep-2018 02:19
Invitado (asisy2k)

    /*9.3.1: Crea una función que calcule el cubo de un número
    real (float)=(lo cambie por double como me recomendo el compilador) que se indique como parámetro. El resultado deberá ser otro
    número real. Pruébala para calcular el cubo de 3.2 y el de 5.*/
   
import java.io.*;

class CrearFuncion {
 
//puedo usar pow u otra forma pero para hacer especificamente lo q me piden esto funciona
   public static double  cubo(double  parametro){
  double  operacion = parametro*parametro*parametro;
  double decimales = Math.round(operacion * 100) / 100.0;
  System.out.println( decimales );
  return decimales;
  }
 
   public static void main (String[] args) {
   cubo(3.2);
   
   }
}


01-Oct-2018 17:03
Nacho Cabanes (+37)

Por una parte, para la pérdida de precisión, puedes dejar claro que es aceptable para ti con cosas como

x = (float) Math. ...

Por otra parte, si te piden que devuelvas un valor, normalmente no tendrás que escribirlo en pantalla (salvo que sea ayuda de depuración tuya).






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)