| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Python: Общие вопросы > NTL в Python |
| Автор: fearuth 14.1.2009, 19:58 |
| Привет всем. Столкнулся с проблемой бесконечно длинных чисел. Знаю, что в с++ есть NTL. Есть ли он в Python, если есть то подскажите, как и где его искать. ЗЫ. Заранее спасибо. |
| Автор: Lazin 14.1.2009, 21:21 |
| в Python 3000, они там такие по умолчанию |
| Автор: Void 14.1.2009, 21:42 |
С практической точки зрения в 2.x (по-видимому и раньше тоже) точно так же можно считать арифметику длинной по умолчанию. |
| Автор: fearuth 15.1.2009, 02:47 |
| По умолчанию, нет. Сложите два числа 1478927459072459087439087593847598679832758927345893427509275759027589275907598759873509375934759327459347598347593475 9347590348875903427590347590347593759034579347593875937598357935798345790347593475976927592375908324 и 1478927459072459087439087593847598679832758927345893427509275759027589275907598759873509375934759327459347598347593475 9347590348875903427590347590347593759034579347593875937598357935798345790347593475976927592375908324827345987689237459 8027349687938245707894357908234758923456843287568923645897632458796342895643276589734 |
| Автор: Void 15.1.2009, 06:38 | ||
Что не так?
|
| Автор: fearuth 15.1.2009, 10:34 |
| Ясно, спасибо А формула a^b mod C = (a**b)%c? |
| Автор: alex_smirnov 15.1.2009, 11:12 | ||
Точно. |
| Автор: fearuth 15.1.2009, 12:01 |
| Хочу с RSA самореализованным разобраться =) |
| Автор: fearuth 18.1.2009, 07:22 | ||||
Ан нет. Не работает это с кодом:
Выдает ошибку
А если просто складывать, перемножать и т.д. то работает с большими числами. Если урезать a до следующиего вида a=564654651 то все работает ЗЫ. В чем может быть косяк? |
| Автор: Void 18.1.2009, 10:57 |
| Аргументы xrange по соображениям эффективности ограничены машинным целым. Обойти это можно, заменив на while с инкрементом. Если, конечно, не смущает, что вселенная исчезнет прежде, чем закончится выполнение 10^80 операций. |
| Автор: alex_smirnov 18.1.2009, 13:41 | ||
Не-не-не, какой while, он медленный до чертиков (http://www.python.org/doc/essays/list2str.html). Генератор надо писать, и всё. xrange тоже генератор. |
| Автор: Void 18.1.2009, 13:59 |
| Конечно, intrinsic functions всегда быстрее. А теперь изобразите на них генератор а-ля xrange, но с поддержкой long. |
| Автор: fearuth 18.1.2009, 14:05 |
| Не смущает =) |