Рассмотрим следующее int;
int start = 287729472784;
Из этого int мне нужно создать новый int длиной всего три цифры, я могу использовать любое значение от 0 до 9.
Однако для создания нового int я не могу использовать какие-либо формы уже существующих генераторов случайных чисел.
Мне было интересно, можно ли использовать комбинацию операций modular, xor, and, bit-shift как-то уменьшить число вниз. Например, xor последней цифры с предыдущей, но я не уверен, что это вообще возможно.
В основном мне нужно создать трехзначный длинный int из начального int, в идеале уменьшив начальный int до трех цифр в длину.
Я надеюсь, что это имеет смысл, и я был бы признателен за любой вклад.
Спасибо
int
в Java — он слишком большой. 2. Каков ваш вариант использования? Вам нужно другое сгенерированное трехзначное целое число для каждого большего целого числа, которое вы передаете? Если это так, отказывайтесь от своей задачи — это невозможно (см. принцип сортировки). Если нет, простая операция по модулю (как предлагает Дирк) прекрасно справится с этой задачей. - person Michael Petrotta   schedule 20.02.2012