Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: jheberg en 2 Mayo 2017, 17:16 PM

Título: ¿Cómo hacer un método de JAVA?
Publicado por: jheberg en 2 Mayo 2017, 17:16 PM
Hola, me dicen que realice un programa que tenga este método:
• Ingresar los datos de la factura (Número de factura y concepto)
Con java ¿cómo quedaría el código?

El ejercicio es el siguiente:
Calcular el iva de la factura. El método deberá recibir el monto de la venta de los 3 artículos, si el monto es mayor a 1000 aplicará un descuento del 10% a la factura y después del descuento calculará el 16% de iva, si el monto de la factura no es mayor a 1000 sólo calculará el 16% de iva.
Título: Re: ¿Cómo hacer un método de JAVA?
Publicado por: engel lex en 2 Mayo 2017, 17:23 PM
no se hacen tareas... muestra lo que llevas y explica tus dudas
Título: Re: ¿Cómo hacer un método de JAVA?
Publicado por: jheberg en 2 Mayo 2017, 18:06 PM
Cita de: engel lex en  2 Mayo 2017, 17:23 PM
no se hacen tareas... muestra lo que llevas y explica tus dudas

De hecho, son varios métodos los que tengo que hacer yo solo quiero un ejemplo  :rolleyes:
Título: Re: ¿Cómo hacer un método de JAVA?
Publicado por: 3n31ch en 2 Mayo 2017, 20:16 PM
Cita de: engel lex en  2 Mayo 2017, 17:23 PM
no se hacen tareas... muestra lo que llevas y explica tus dudas

Si engel lex dice que no. Sera que no.

(Lo lamento pero se dice que alguien le llevo la contraria una vez... y desapareció)  :-X

Solo dejare esto: http://lineadecodigo.com/java/crear-un-metodo-en-java/ (http://lineadecodigo.com/java/crear-un-metodo-en-java/)
Título: Re: ¿Cómo hacer un método de JAVA?
Publicado por: Fishykiller2 en 3 Mayo 2017, 13:24 PM
Bueno un poco de ayuda que estos son muy malos jejeje ..  :P :P :


public int factura(int monto){

int resultado;

  if(monto>1000){
  resultado= (monto*0.90)*1.16;
  }

  else if (monto<1000){
  resultado= monto*1.16;
  }
return resultado;
}
Título: Re: ¿Cómo hacer un método de JAVA?
Publicado por: 3n31ch en 3 Mayo 2017, 20:30 PM
Ojo con lo que puso Fishykiller2 que si uitilizas esa funcion te dara error por 2 razones.

1. Al multiplicar un int por un float o double el resultante sera float o double, por tanto al guardar el valor en "resultado" estas generando un error de tipado. Tendrias que castearlo a int:

Código (java) [Seleccionar]
resultado = (int)((monto*0.90)*1.16);

2. Al poner un int (igual que cualquier tipo primitivo) en la funcion obligas que el resultado sea igual al tipo declarado (en este caso int) y no puede ser null (a parte de que para poder renornar un valor nulo con un objeto, este tiene que ser puesto expresamente como nulo). Por tanto la funcion estara erronea ya que existe la posibilidad de que monto sea igual a 1000 y el valor resultado nunca se defina.

Algo mas apropiado es:

Código (java) [Seleccionar]
public int factura(int monto){
        int resultado = 0;
        if(monto>1000){
            resultado = (int)((monto*0.90)*1.16);
        } else if (monto<1000){
            resultado = (int)(monto*1.16);
        }
        return resultado;
    }


PD: No queria poner código pero quiero evitar el error de antemano.