Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / проблема с большими числами / 14 сообщений из 14, страница 1 из 1
27.03.2012, 15:11:29
    #37725542
blackbanny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
Пишу такой код:
Код: java
1.
2.
3.
4.
5.
int q = (int)java.lang.Math.pow(21, 13);
System.out.println("q: " + q);
BigInteger w;
w = BigInteger.valueOf((int)java.lang.Math.pow(23, 13));
System.out.println("w: " + w);


вывод такой:
q: 2147483647
w: 2147483647


хотя должно быть 154472377739119461

запускаю класс с помощью команды java -classpath . -XX:AutoBoxCacheMax=20480 MyClass
т.е. увеличиваю кэш для int, но как видно число все равно не влазиет, подскажите, что делать?
...
Рейтинг: 0 / 0
27.03.2012, 15:16:18
    #37725557
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
Кэш автобоксинга к вопросу отношения не имеет.

Результат Math.pow вы же сами к int кастите. Почему вы ожидаете, что при этом он должен привысить размерность этого типа?

Так не пробовали?
new BigInteger(21l).pow(13)
...
Рейтинг: 0 / 0
27.03.2012, 17:52:44
    #37725918
blackbanny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
Спасибо) исправил)
а подскажите, как сделать, чтобы через Character.toChars() символы в TextField отображались корректно, просто если пишу Character.toChars(2790), то отображается квадратик какой то, как и при остальных больших значения аргумента, а должен как бы кружок, как здесь
...
Рейтинг: 0 / 0
27.03.2012, 17:57:20
    #37725935
eros2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
blackbannyа подскажите, как сделать, чтобы через Character.toChars() символы в TextField отображались корректно, просто если пишу Character.toChars(2790), то отображается квадратик какой то, как и при остальных больших значения аргумента, а должен как бы кружок, как здесь
Скорее всего, текущий шрифт TextField-а не содержит этих символов. Попробуйте другой, в котором точно они есть.
...
Рейтинг: 0 / 0
27.03.2012, 18:11:39
    #37725964
blackbanny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
что не получается, попробовал Font font = new Font("Arial", Font.BOLD, 12) и Font font = new Font("Times New Roman", Font.BOLD, 12);
все равно отображается квадратик, подскажите пожалуйста шрифт...
...
Рейтинг: 0 / 0
27.03.2012, 18:42:54
    #37726029
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
blackbannyСпасибо) исправил)
а подскажите, как сделать, чтобы через Character.toChars() символы в TextField отображались корректно, просто если пишу Character.toChars(2790), то отображается квадратик какой то, как и при остальных больших значения аргумента, а должен как бы кружок, как здесь
А вам точно именно этот символ нужен?
...
Рейтинг: 0 / 0
27.03.2012, 18:47:10
    #37726036
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
"Arial Unicode MS" вроде содержит весь Unicode. Научитесь пользоваться Character Map в Windows
...
Рейтинг: 0 / 0
27.03.2012, 19:33:46
    #37726117
blackbanny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
Blazkowicz"Arial Unicode MS" вроде содержит весь Unicode. Научитесь пользоваться Character Map в Windows
пробовал этот шрифт ничего не получается...
я делаю шифрование RSA, получаю код букв Integer code = (int)sourceCharacters[i];
в результате в зашифрованном виде получаются большие числа, например для фразы " На улице хорошая погода "
такие шифрованные коды:
1659 1836 1992 3060 1666 1804 2883 1862 1992 2648 1625 2930 1625 3067 1836 2720 1992 3039 1625 2660 1625 187 1836

если делаю
Код: java
1.
2.
Font font = new Font("Arial Unicode MS", Font.BOLD, 12);
textField.setFont(font);


то для этих кодов, вот что выводится в TextField:
ٻܬ߈௴ڂ܌ୃ݆߈੘ٙ୲ٙ௻ܬઠ߈௟ٙ੤ٙ»ܬ
...
Рейтинг: 0 / 0
27.03.2012, 21:09:08
    #37726272
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
И зачем вы двоичные данные пытаетесь показать как текст?
...
Рейтинг: 0 / 0
27.03.2012, 21:40:30
    #37726312
blackbanny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
BlazkowiczИ зачем вы двоичные данные пытаетесь показать как текст?
почему двоичные?
Код: java
1.
2.
3.
char n = 'Н';
char a = 'а';
System.out.println((int)n + " " + (int)a);


1053 1072
а в зашифрованном виде эти числа:
1659('Н') 1836('а')
...
Рейтинг: 0 / 0
27.03.2012, 21:51:38
    #37726334
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
blackbannyпочему двоичные?
Код: java
1.
2.
3.
char n = 'Н';
char a = 'а';
System.out.println((int)n + " " + (int)a);


1053 1072
а в зашифрованном виде эти числа:
1659('Н') 1836('а')

ОК. Давайте подойдём с другой стороны. Мы нашли символ. Взяли его числовой код. Преобразовали в другое число. Почему вы считаете что новое число это всегда некоторый символ?
...
Рейтинг: 0 / 0
27.03.2012, 23:30:15
    #37726487
blackbanny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
Blazkowicz, в том то и проблема либо искать шрифт, где есть символы с такими большими кодами, либо зашифрованные преобразовывать как то, чтобы число было меньше и точно был символ, но это отклонение от алгоритма, в том плане, что зашифрованное сообщение еще как то преобразуется...
Хотелось бы найти такой шрифт, просто в Юникоде же есть символы с такими кодами или я ошибаюсь?
...
Рейтинг: 0 / 0
27.03.2012, 23:45:48
    #37726505
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
ОК. Давайте ещё раз попробуем. Включаем логику.
Любой символ имеет численый код. Значит ли это что любое число является кодом символа?

Итак, зачем вам этот текст из чисел, которые не обязательно являются кодами символов текста?
...
Рейтинг: 0 / 0
28.03.2012, 11:13:29
    #37726981
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с большими числами
Забыл добавить. Обычно, если некую недетерменированую числовую последовательность (обычно её называют бинарными данными) нужно представить в виде текста, то её просто кодируют Base64.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / проблема с большими числами / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]