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

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

Войти
Регистрация
Восстановить пароль
 
Lena _t
0 / 0 / 0
Регистрация: 25.04.2011
Сообщений: 32
#1

нод двух чисел - C++

27.06.2011, 23:37. Просмотров 939. Ответов 11
Метки нет (Все метки)

Помогите составить программу нахождение нод двух введенных чисел
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2011, 23:37     нод двух чисел
Посмотрите здесь:

Найти НОД двух чисел - C++
Необходимо составить программу которая определяет для двух вводимых натуральных чисел M и N их наибольший общий делитель

НОД двух чисел алгоритм Евклида - C++
Найти найбольший общий делитель двух чисел по алгоритму Евклида. Использовать рекурсию.

Не срабатывает while (НОД для двух чисел) - C++
начал писать программу по определению НОД для двух чисел. В ходе одного условия почему-то не срабатывает while. Подскажите, почему ?? ...

Функция вычислени НОД двух чисел - C++
Люди,помогите пожалуйста!!! на завтра надо! Создайте функцию для вычисления наибольшего делителя для двух целых чисел

Нахождение НОД и НОК двух чисел - C++
Вот код программы на Паскале нужно переделать на С++ { Рекурсивные алгоритмы: нахождения НОД и НОК двух чисел } var a,b:longint; ...

Найти НОД двух целых чисел - C++
Найти НОД двух целых чисел. Помогите пожалуйста)

Нужно найти НОД двух чисел - C++
Подскажите пожалуйста. Надо найти НОД. Есть код int main() { setlocale(LC_ALL, "russian"); cout << "\t***Нахождение НОД***\n"; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Daemon025
380 / 329 / 67
Регистрация: 06.12.2010
Сообщений: 900
27.06.2011, 23:38     нод двух чисел #2
C++
1
2
3
4
5
int gcd(int a,int b)
{
    if (b==0) return a;
    else return gcd(b,a%b);
}
Lena _t
0 / 0 / 0
Регистрация: 25.04.2011
Сообщений: 32
28.06.2011, 00:10  [ТС]     нод двух чисел #3
Простите конечно а можно сделать это что то по проще без использование этих функций
,а то честно говоря я не очень знаю их.
ForEveR
В астрале
Эксперт С++
7969 / 4731 / 320
Регистрация: 24.06.2010
Сообщений: 10,539
Завершенные тесты: 3
28.06.2011, 00:12     нод двух чисел #4
Lena _t, Тут одна функция которая вызывает себя рекурсивно. Издеваетесь?
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
28.06.2011, 00:19     нод двух чисел #5
Lena _t, если это слишком сложно пробуй так:
цикл i от меньшего из 2-х до 0.
если на i делятся без остатка оба числа - это Нод.

выкладывай что вышло и тебе помогут!
Daemon025
380 / 329 / 67
Регистрация: 06.12.2010
Сообщений: 900
28.06.2011, 00:26     нод двух чисел #6
без рекурсии:
C++
1
2
3
4
5
6
7
8
9
10
11
12
int getGreatestCommonDivisor(int a, int b)
{
    while (true)
    {
        a = a % b;
        if (a == 0)
            return b;
        b = b % a;
        if (b == 0)
            return a;
    }
}
diagon
Higher
1927 / 1193 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
28.06.2011, 12:07     нод двух чисел #7
C++
1
2
3
4
5
#include <iostream>
main(){
    int a,b;
    for (std::cin >> a >> b;b^=a^=b^=a%=b;);
    std::cout << a; }
Lena _t
0 / 0 / 0
Регистрация: 25.04.2011
Сообщений: 32
04.07.2011, 16:45  [ТС]     нод двух чисел #8
Простите меня ,но мы еще не учили return a;.Помогите пожалуйста !
Daemon025
380 / 329 / 67
Регистрация: 06.12.2010
Сообщений: 900
04.07.2011, 16:59     нод двух чисел #9
Цитата Сообщение от Lena _t Посмотреть сообщение
Простите меня ,но мы еще не учили return a;.Помогите пожалуйста !
обучение в вузе - это самообучение.
return возвращает результат, то есть НОД
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 691
04.07.2011, 17:11     нод двух чисел #10
Вот.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include<iostream>
using namespace std;
int main ( )
{setlocale(LC_ALL,"Rus");
int a,b,c;
bool g=true;
cout<<"Ввведите первое число --> ";
cin>>a;
cout<<"Ввведите второе число --> ";
cin>>b; 
 
do{
   a = a % b;
  if (a == 0)
  {c=b;
break;}
b = b % a;
if (b == 0)
{c=a;
break;}
 }while (true);
 
 
 cout<<"Результат "<<c;
 cin.get();
  cin.get();
  return 0;
}
Lena _t
0 / 0 / 0
Регистрация: 25.04.2011
Сообщений: 32
04.07.2011, 21:32  [ТС]     нод двух чисел #11
#include <windows.h>
#include<iostream>
using namespace std;
void main ()
{
int a,b,c;
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
cout<<"Ввведите первое число ";
cin>>a;
cout<<"Ввведите второе число ";
cin>>b;
do{
   a = a % b;
  if (a == 0)
  {c=b;
break;}
b = b % a;
if (b == 0)
{c=a;
break;}
 }while (true);
cout<<"Нод "<<c;
}
Правильно?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.07.2011, 08:56     нод двух чисел
Еще ссылки по теме:

Нахождение НОД и сравнение двух чисел - C++
Подскажите как реализовать нахождение НОД(наибольший общий делитель) и сравнение двух дробей. Преподаватель дал только скрин готового...

Вычисление НОД двух натуральных чисел (рекурсия) - C++
День добрый, помогите пожалуйста поправить данную прогу, надо бы избавиться от меток, короче говоря, сократить строки. Вот сама...

Подправить код. НОД двух натуральных чисел - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; int _tmain(int argc, _TCHAR* argv) {setlocale(LC_ALL,&quot;Russian&quot;); ...

Нод для двух натуральных чисел с циклом for - C++
#include&lt;iostream&gt; #include&lt;windows.h&gt; using namespace std; int main() { SetConsoleCP(1251); SetConsoleOutputCP(1251); ...

Найти НОД двух целых чисел по алгоритму Евклида. - C++
задание: Найти НОД двух целых чисел по алгоритму Евклида.


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

Или воспользуйтесь поиском по форуму:
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 691
05.07.2011, 08:56     нод двух чисел #12
Cами протестируйте.
Yandex
Объявления
05.07.2011, 08:56     нод двух чисел
Ответ Создать тему
Опции темы

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