Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
AC_555
0 / 0 / 1
Регистрация: 04.06.2015
Сообщений: 30
1

Помогите понять код по теме алгоритма Дифии-Хелмана

17.06.2015, 10:11. Просмотров 895. Ответов 3
Метки нет (Все метки)

Делаю лабу по теме алгоритму Дифии-Хелмана, с теорией проблемы, с кодом тоже нет проблем. Но одну функцию не смог сам написать(нашёл в инете) она работает корректно. Это высчитывание числа по модулю при больших степенях например:
25^(555)mod17
g = 25; b = 555; p = 17;
C++
1
2
3
4
5
6
7
8
long long Bob::powmod(long long g, long long b, long long p)
{
    if (b == 0) return 1;
    long long res = powmod(g, b >> 1, p);                      
    res *= res;
    res %= p;
    return (b & 1)? (g * res) % p : res;
}
в целом всё понятно кроме returna . Если есть возможность и кто то понял помогите).
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.06.2015, 10:11
Ответы с готовыми решениями:

Не получается запустить длинный код Алгоритма Гомори, код правильный.
Собственно как запустить код через С++Builder 6 #include<ctype.h>...

Нашел в схожей теме не могу понять в чем ошибка. Кроме того как конкретно сделать что были високосные года?
Пользователь вводит две даты (день, месяц, год в виде целых чисел). Необходимо...

Помогите пожалуйста дописать программу по теме ООП, Классы
Помогите новичку в программирование подогнать программу под требования,выручите...

Помогите понять код
если ты добрый человек можно этот код про комментировать я что то не до конца...

Помогите понять код.
#include<stdio.h> #include<conio.h> int x_touper(char ch) { if(ch>='a'...

3
jonson
235 / 208 / 84
Регистрация: 18.03.2010
Сообщений: 750
17.06.2015, 10:21 2
Лучший ответ Сообщение было отмечено SatanaXIII как решение

Решение

Цитата Сообщение от AC_555 Посмотреть сообщение
в целом всё понятно кроме returna
это проверка числа b на четность.
если b НЕ четное число, возвращается - (g * res) % p
если четное - res;
1
AC_555
0 / 0 / 1
Регистрация: 04.06.2015
Сообщений: 30
17.06.2015, 10:33  [ТС] 3
Спасибо.
0
Eru Iluvatar
Заблокирован
17.06.2015, 16:38 4
...

Добавлено через 2 минуты
http://www.cyberforum.ru/cgi-bin/latex.cgi?{25}^{555 mod 17} mod 17

Зачем оставлять такие огромные степени?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.06.2015, 16:38

Помогите понять javascript-код
У поисковика Google есть такая 'фишка', как интеграция в контекстное меню...

Архиватор на основе алгоритма Хаффмана, помогите разобрать код.
Всем привет :) вот в чем собственно вопрос или просьба... мне задана курсовая...

Не могу понять сути алгоритма
Как то неловко спрашивать, Но может пожете расшифровать. Не могу понять сути...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru