![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| fearuth |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 9.9.2008 Репутация: нет Всего: 1 |
Привет всем. Столкнулся с проблемой бесконечно длинных чисел. Знаю, что в с++ есть NTL. Есть ли он в Python, если есть то подскажите, как и где его искать.
ЗЫ. Заранее спасибо. |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 2 Всего: 154 |
в Python 3000, они там такие по умолчанию
|
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 10 Всего: 173 |
С практической точки зрения в 2.x (по-видимому и раньше тоже) точно так же можно считать арифметику длинной по умолчанию. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| fearuth |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 9.9.2008 Репутация: нет Всего: 1 |
По умолчанию, нет.
Сложите два числа 1478927459072459087439087593847598679832758927345893427509275759027589275907598759873509375934759327459347598347593475 9347590348875903427590347590347593759034579347593875937598357935798345790347593475976927592375908324 и 1478927459072459087439087593847598679832758927345893427509275759027589275907598759873509375934759327459347598347593475 9347590348875903427590347590347593759034579347593875937598357935798345790347593475976927592375908324827345987689237459 8027349687938245707894357908234758923456843287568923645897632458796342895643276589734 Это сообщение отредактировал(а) fearuth - 15.1.2009, 02:48 |
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 10 Всего: 173 |
Что не так?
Это сообщение отредактировал(а) Void - 15.1.2009, 06:40 -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| fearuth |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 9.9.2008 Репутация: нет Всего: 1 |
Ясно, спасибо
А формула a^b mod C = (a**b)%c? |
|||
|
||||
| alex_smirnov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 194 Регистрация: 22.6.2007 Где: Санкт-Петербург Репутация: 2 Всего: 4 |
Точно. |
|||
|
||||
| fearuth |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 9.9.2008 Репутация: нет Всего: 1 |
Хочу с RSA самореализованным разобраться =)
|
|||
|
||||
| fearuth |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 9.9.2008 Репутация: нет Всего: 1 |
Ан нет. Не работает это с кодом:
Выдает ошибку
А если просто складывать, перемножать и т.д. то работает с большими числами. Если урезать a до следующиего вида a=564654651 то все работает ЗЫ. В чем может быть косяк? |
||||
|
|||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 10 Всего: 173 |
Аргументы xrange по соображениям эффективности ограничены машинным целым. Обойти это можно, заменив на while с инкрементом.
Если, конечно, не смущает, что вселенная исчезнет прежде, чем закончится выполнение 10^80 операций. Это сообщение отредактировал(а) Void - 18.1.2009, 11:01 -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| alex_smirnov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 194 Регистрация: 22.6.2007 Где: Санкт-Петербург Репутация: 2 Всего: 4 |
Не-не-не, какой while, он медленный до чертиков (читайте Гвидо). Генератор надо писать, и всё. xrange тоже генератор. |
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 10 Всего: 173 |
Конечно, intrinsic functions всегда быстрее. А теперь изобразите на них генератор а-ля xrange, но с поддержкой long.
-------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| fearuth |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 9.9.2008 Репутация: нет Всего: 1 |
Не смущает =)
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Python: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |