Хорошо. В принципе, я понял это:
Моя проблема заключалась в том, что я хотел сохранить точность до 4 десятичных знаков, но при вводе большого числа началось усечение цифр. Например, у меня было это:
Double Remain = (double) Math.round((double quantity/12)*10000)/10000;
Это работает для меньших чисел, но 900000000 все еще усекается до 7,5 чего-то.
Так что мне нужно разделить числа на длинные
а затем возьмите модуль 2 и разделите.
Возможно, это помогло бы, если бы объяснил цель того, что я пытался сделать. Я хотел, чтобы код отображал определенное количество значащих цифр. Если я использую Double в качестве переменной для хранения пользовательского ввода, которое нужно разделить, многие цифры могут быть усечены (в зависимости от количества получаемых десятичных знаков). Мне нужен был способ стандартизировать область действия переменной в целых числах, сохраняя при этом числа с точностью до 4 десятичных знаков.
Другими словами, мне нужно иметь возможность обрабатывать одно и то же число, независимо от того, сколько десятичных разрядов занимает частное.
Для этого я беру пользовательский ввод и делю его на литерал (12).
Затем я беру модуль таким же образом и делю модуль на 12.
Затем я собираю 2 вместе так:
Quotient.toString() + Remainder.toString().substring(1)