Форум программистов, компьютерный форум CyberForum.ru

алгоритм эвклида - C++

Восстановить пароль Регистрация
 
Hazrat
2 / 2 / 1
Регистрация: 26.01.2015
Сообщений: 38
12.07.2015, 10:31     алгоритм эвклида #1
как работает этот код?

C++
1
2
3
4
int gcd(int a, int b) {
  while(b) b^=a^=b^=a%=b;
  return a;
 }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.07.2015, 10:31     алгоритм эвклида
Посмотрите здесь:

C++ c++/алгоритм
алгоритм C++
алгоритм C++
C++ Алгоритм
Алгоритм C++
C++ Расчет наибольшего общего делителя двух натуральных чисел используя алгоритм эвклида
C++ QR алгоритм
C++ Алгоритм

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Никита Однороб
107 / 87 / 13
Регистрация: 21.08.2012
Сообщений: 352
12.07.2015, 10:57     алгоритм эвклида #2
%= это присвоить остаток от деления
a^=b это a = a ^ b(xor)

есть ещё такая реализация, попроще
C++
1
2
3
4
5
6
7
8
9
int gcd(int a, int b) {
    int c;
    while (b != 0) {
        c = b; 
        b = a % b; 
        a = c; 
    }
  return a;
}
Yandex
Объявления
12.07.2015, 10:57     алгоритм эвклида
Ответ Создать тему
Опции темы

Текущее время: 13:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru