Geferson:
Buenos días, yo hago un método con un descuento sobre el número, pero el uno por ciento de descuento no funciona. Problema con el redondeo de números?
Esperando: precio 65.
Realidad: precio 66.
CÓDIGO:
public class Main {
public static void main(String[] args) {
int discount = 1;
int price = 66;
price -= (int) (discount * (price / 100));
System.out.println(price);
}
}
Por favor, dime cómo redondear hacia abajo?
SOLUCIÓN:
public class Main {
public static void main(String[] args) {
int discount = 1;
int price = 66;
double amountOfDiscount = (discount * (price / 100.0f));
double priceWithDiscountDoubleType = (price - amountOfDiscount);
int priceWithDiscount = (int)
Math.floor(priceWithDiscountDoubleType);
System.out.println(priceWithDiscount);
}
}
Fred:
Esto se debe a que está utilizando int
para almacenar los precios, etc. Trate de usar números de punto flotante como float
odouble