Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
D1K
1 / 1 / 0
Регистрация: 26.04.2011
Сообщений: 36
#1

НОД через рекурсию - C++

08.04.2012, 23:27. Просмотров 665. Ответов 2
Метки нет (Все метки)

Нужно написать программу для нахождения НОД через рекурсию по такому алгоритму:
1) задать два числа;
2) если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма;
3) определить большее из чисел;
4) заменить большее из чисел разностью большего и меньшего из чисел;
5) повторить алгоритм с шага 2.
===
Помогите, пожалуйста...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.04.2012, 23:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос НОД через рекурсию (C++):

последовательность через рекурсию - C++
нужна ваша помощь задача такая: написать рекурсивную функцию для ввода последовательности чисел и вывода ее на экран в обратном...

поиск через рекурсию - C++
С помощью массива структур описать каталог компьютерных игр, предусмотрев следующие характеристики: название, производитель, год издания,...

Число из 10-ой в 2-ю ,через рекурсию. - C++
Доброго дня. Требуется написать программу (из 2-ой в 10-ю) .С использованием рекурсии. Выход данной программы 0. Что следует поправить? ...

Факториал через рекурсию - C++
Подскажите, как можно вычислить факториал некоторого числа через рекурсию функций (через цикл либо другим методом не интересует). Есть...

Не высчитывает корень через рекурсию - C++
double kor(double a) { double Xn=0.5*(1+a); if (fabs(Xn-a)>0.0001) return a; else return Xn=0.5*(kor(a-1)+a/kor(a-1)); } void...

Описание функции через рекурсию - C++
Описать логическую функцию ПОТОМОК(А,В), проверяющую, является ли человек с именем В потомком (ребенком, внуком, правнуком) человека с...

2
HighPredator
5544 / 1857 / 346
Регистрация: 10.12.2010
Сообщений: 5,479
Записей в блоге: 2
09.04.2012, 00:15 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream>
 
using namespace std;
 
int main()
{
    int A,B;
    //...
    while(A!=B)
    {
        if(A>B) A=A-B;
        else B=B-A;
    }
    cout<<A<<endl;
    getchar();
    return 0;
}
0
D1K
1 / 1 / 0
Регистрация: 26.04.2011
Сообщений: 36
09.04.2012, 00:56  [ТС] #3
HighPredator, это через цикл! а мне нужно было через рекурсию я уже и сам сделал... Вот может кому то пригодится.
C++
1
2
3
4
5
6
7
int gcd ( int n, int m ){
        if(n==m)
            return n ;
        if (n<m)
            return gcd(n,m-n );
        return gcd(n-m,m ); 
    }
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.04.2012, 00:56
Привет! Вот еще темы с ответами:

Имитация цикла for через рекурсию - C++
Имитация цикла for через рекурсию

Число Фибоначчи через рекурсию - C++
Для заданного числа n посчитать числа ФИбоначчи (то есть число будет равно суме двух предыдущих), которое задано след. соотношениями:...

Найти тангенс x через рекурсию - C++
/*Вычисление тангенса задано формулой Найти тангенс(к примеру,пи/3, n=4) tg(x) = ---------x----------- x^2 ...

Нужно перевернуть строчку через рекурсию - C++
Всем привет. Нужна помощь. Есть строчка и ее надо перевернуть, используя рекурсию. Всем, кто хотя бы натолкнет на идею спасибо, а то...


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

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

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