Добрый всем день, я в Java пока новенький. Завис со следующей задачей:
Вычислите стоимость товара с учетом скидки. Пользователь вводит цену товара в виде двух целых чисел через пробел (рубли копейки). В следующей строке он вводит размер скидки в процентах (также целое число). Цену нужно вывести так, как показано в тесте.
Учтите, что здесь не применяется округление по правилам математики. Стоимость товара всегда учитывается в большую сторону.
При выводе число рублей и копеек выводится в двух позициях (т.е. 00 коп., если копеек нет)
Решил её вот так:
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a, b, c;
a = sc.nextInt();
b = sc.nextInt();
c = sc.nextInt();
int d = (a*100+b)*(100-c)/100/100;
int e = (int)Math.ceil((a*100+b)*(double)(1 00-c)/100%100);
System.out.print(d+" руб. ");
System.out.printf("%02d",e);
System.out.println(" коп.");
}
}
Но при данных 58 82 15 вместо “50 руб. 00 коп.” получаю “49 р. 100 коп.” Что не так?