Требуется как-то хранить числа больше чем int64 может содержать.
Есть идея создать массив int, где первый элемент - единицы, второй - тысячи, третий - миллионы и тд. Но это вариант решения очень громоздкий и занимает много места.
Какие ещё есть варианты или как улучшить предложенный?
Лучший вариант - использовать BigInteger. Он может хранить любое, сколь угодно большое число.
Если нужно по каким-то причинам что-то самописное, изучить, как он устроен и изобрести велосипед :)
Вот описание:
https://habr.com/post/207754/
Исследовав конструкторы структуры BigInteger можно заключить: если число помещается в int диапазон, то оно хранится в переменной _sign; если число не помещается в int диапазон, то его знак хранится в переменной _sign (-1 – для отрицательного и 1 – для положительного), а массив _bits содержит коэффициенты ai разложения длинного числа с основанием 2^32.
Ваша идея правильная, с той только разницей что лучше хранить число не в десятичной системе счисления, а в системе с основанием 109 или 232 - это уменьшит потребление памяти в 9 раз.
Но если целью является не тренировка в алгоритмах длинной арифметики, а решение реальных задач - лучше использовать готовый класс BigInteger.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
У меня в главном классе создан метод virtual, в классах наследниках, он переопределяетсяТак вот, мне нужно из классов наследников взять значение...
Пытаюсь привязать цвет эллипса к полю созданного класса, но ничего не выходитЧто я делаю не так? Xaml:
Требуется из цифры 1 получить A, из 2 получить B, из 3 получить C и тд до ZКак это сделать?