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

рекурсивные функции - C++

Восстановить пароль Регистрация
 
мариш<3
1 / 1 / 0
Регистрация: 07.12.2010
Сообщений: 10
10.01.2011, 17:32     рекурсивные функции #1
помогите ррешить!!!!! на С++
Записать алгоритм Евклида вычисления наибольшего общего делителя (НОД) как рекурсивную функцию. Алгоритм основан на том факте, что если a=qb+r, где 0<r<b, то HOD(a,b)=HOD(b,r). В процессе вычислений выводить на экран текущие выражение a=qb+r в численном виде, то есть 37=2*17+3, 17=5*3+2 и т.д. В конце вывести НОD.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
10.01.2011, 17:44     рекурсивные функции #2
мариш<3,
C++
1
2
3
4
5
6
7
int GCD(const int& a, const int& b)
{
    if (a && b)
        cout << (a > b ? a : b) << " = " << ((a > b ? a : b) / (a < b ? a : b)) <<
        " * " << (a < b ? a : b) << " + " << ((a > b ? a : b) % (a < b ? a : b)) << endl;
    return !a || !b ? a + b : a > b ? GCD(a % b, b) : GCD(a, b % a);
}
мариш<3
1 / 1 / 0
Регистрация: 07.12.2010
Сообщений: 10
10.01.2011, 17:49  [ТС]     рекурсивные функции #3
да это я и сама написала, я не пойму дальше кака выводить-
В процессе вычислений выводить на экран текущие выражение a=qb+r в численном виде, то есть 37=2*17+3, 17=5*3+2 и т.д.и только в конце вывести В конце вывести НОD.
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
10.01.2011, 17:52     рекурсивные функции #4
мариш<3, up...
Yandex
Объявления
10.01.2011, 17:52     рекурсивные функции
Ответ Создать тему
Опции темы

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