Уведомления

Группа в Telegram: @pythonsu

#1 Март 30, 2011 21:52:21

Rumato
От:
Зарегистрирован: 2010-10-03
Сообщения: 93
Репутация: +  0  -
Профиль   Отправить e-mail  

Возведение в большую степень

Здравствуйте, мне нужно возвести 75790643190143 в степень 1908298, т.е.


 75790643190143**1908298
я думаю может быть разложить на простые множители степень и потом поочерёдно возводить. 1908298 факторизуется на , но тоже проблема
 75790643190143**4397
это много - не считается. Хотя можно факторизовать оба числа и потом их возводить

Есть какие-нибудь решения таких проблем? или идеи как решить?



Офлайн

#2 Март 31, 2011 10:12:16

Studentik
От:
Зарегистрирован: 2009-12-26
Сообщения: 99
Репутация: +  0  -
Профиль   Отправить e-mail  

Возведение в большую степень

import decimal
d1 = decimal.Decimal('75790643190143')
d2 = decimal.Decimal('1908298')
d3 = d1**d2
print(d3)
4.745492313861105442800525716E+26486442



Офлайн

#3 Апрель 1, 2011 07:52:38

Rumato
От:
Зарегистрирован: 2010-10-03
Сообщения: 93
Репутация: +  0  -
Профиль   Отправить e-mail  

Возведение в большую степень

спасибо большое - помогло, а я с циклами и факторизацией пытался сделать;))



Офлайн

#4 Апрель 1, 2011 19:11:18

Rumato
От:
Зарегистрирован: 2010-10-03
Сообщения: 93
Репутация: +  0  -
Профиль   Отправить e-mail  

Возведение в большую степень

в продолжение темы (надеюсь не сильно обнаглею) : число d3 получили,как его по модулю поделить на другое число? тоже большое, типа такого : 99595173815424, т.е d3 mod 99595173815424 или же d3%99595173815424



Офлайн

#5 Апрель 3, 2011 14:14:13

cookie-god
От:
Зарегистрирован: 2011-03-13
Сообщения: 41
Репутация: +  0  -
Профиль   Отправить e-mail  

Возведение в большую степень

Rumato
в продолжение темы (надеюсь не сильно обнаглею) : число d3 получили,как его по модулю поделить на другое число? тоже большое, типа такого : 99595173815424, т.е d3 mod 99595173815424 или же d3%99595173815424
http://e-maxx.ru/algo/binary_pow
Только на каждой итерации там надо брать a % 99595173815424



Офлайн

#6 Апрель 3, 2011 14:32:39

Rumato
От:
Зарегистрирован: 2010-10-03
Сообщения: 93
Репутация: +  0  -
Профиль   Отправить e-mail  

Возведение в большую степень

cookie-god, интересная инфа, мне примерно тоже в универе на фортране показали, спасибо за помощь!)



Офлайн

#7 Апрель 3, 2011 14:39:10

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Возведение в большую степень

Ой! стандартнейшая функция pow принимает три параметра. int/long вполне подойдет, decimal не требуется.
Это вы RSA ручками делаете?



Офлайн

#8 Апрель 3, 2011 15:16:03

Rumato
От:
Зарегистрирован: 2010-10-03
Сообщения: 93
Репутация: +  0  -
Профиль   Отправить e-mail  

Возведение в большую степень

Андрей Светлов, да - это RSA, нужно написать программу, которая взламывает сообщение, впринципе почти всё сделал, только на последнем этапе небольшая остановка)



Офлайн

#9 Апрель 3, 2011 15:21:24

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Возведение в большую степень

Насколько помню, при имеющихся ключах было кода строк на десять.



Офлайн

#10 Апрель 3, 2011 15:31:17

Rumato
От:
Зарегистрирован: 2010-10-03
Сообщения: 93
Репутация: +  0  -
Профиль   Отправить e-mail  

Возведение в большую степень

у меня немного больше, как напишу - выложу, может полезным будет



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version