|
Borisovna |
|
|
|
помогите пожалуйста!!!! нужно разработать программу сложения, вычитания и возведения в степень чисел по модулю простого числа. Длина чисел до 512 бит (можно до 64) длина блока 512 бит(можно до 64) программирование на Си++ Builder. буду очень признательна))))
|
|
|
|
 |
|
Alexu007 |
|
|
|
|
|
 |
|
Circiter |
|
|
2 BorisovnaЭто вам кажись надо разобраться с полямя  ... Гадость ещё та, брр... :) Ещё китайскую теорему об остатках сюда приплести можно... Может быть вам как-нибудь помогут темы Возведение в большие степени и mod n. Поясните и возведение в степень больших чисел.
|
|
|
|
 |
|
Circiter |
|
|
|
Ну про Галуа-поля и КТО это я конечно совершенно зря ляпнул. :)
В общем вам нужно научиться находить остатки от деления чисел. После этого можно будет легко складывать/умножать числа по-модулю. Можно даже сначала найти остатки от деления исходных чисел на данный модуль, а потом уже сложить по-модулю сами найденные остатки. При этом для небольших значений модуля можно будет составить предварительно таблицу умножения и пользоваться ею.
Для возведения в степень по модулю наверное будет достаточно обычного быстрого возведения в степень. Просто операции в этом алгоритме нужно будет в модульной арифметике выполнять. Примерно так...
|
|
|
|
 |
|
Borisovna |
|
|
|
спасибо. не могли бы подсказать, с какими источниками ознакомиться, чтобы это освоить? литература какая либо... в просторах интеренета я к сожалению очень очень мало нашла информации, написанной доступным языком.
|
|
|
|
 |
|
tolstopuz |
|
|
|
Кнут, Искусство программирования для ЭВМ, т.2, п.4.3.1.
|
|
|
|
 |