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

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

Войти
Регистрация
Восстановить пароль
 
nata95
 Аватар для nata95
1 / 1 / 0
Регистрация: 05.01.2014
Сообщений: 102
#1

Даны два числа. Найти их наибольший общий делитель - C++

09.04.2014, 19:32. Просмотров 885. Ответов 2
Метки нет (Все метки)

Пожалуйста, помогите у меня превышено время работы
Даны два числа. Найти их наибольший общий делитель.
Формат входных данных
Вводятся два натуральных числа, не превышающих 109.
Формат выходных данных
Выведите НОД введенных чисел.
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(0), b(0), d(1);
cin >> a >> b;
int x = a;
if(b > a){
x = b;
}
for(int i = 1; i <= x; i++){
        if(a%i == 0 && b%i == 0){
                  d = i;
                  }
        }
       cout << d;         
return 0;               
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2014, 19:32     Даны два числа. Найти их наибольший общий делитель
Посмотрите здесь:

C++ С клавиатруы вводится 2 числа, найти их наибольший общий делитель.
Найти наибольший общий делитель чисел C++
[Qt 5] Задание:Найти наибольший общий делитель n и m C++
шестнадцатеричных числа. Определить наибольший общий делитель C++
C++ Найти наибольший общий делитель двух чисел
C++ Даны два числа А и B. Найти их наибольший общий делитель
C++ Найти НОД (наибольший общий делитель)
C++ Найти наибольший общий делитель целых чисел х и у
C++ Найти NOD(a, b, c), (наибольший общий делитель)
Найти наибольший общий делитель двух чисел C++
Найти наибольший общий делитель многочленов C++
C++ Найти наибольший общий делитель

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
6115 / 5718 / 1849
Регистрация: 18.12.2011
Сообщений: 14,615
Завершенные тесты: 1
09.04.2014, 21:51     Даны два числа. Найти их наибольший общий делитель #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;
    cin >> a >> b;
    while(a!=b)
    {
        if(b > a)
            b=b-a;
        else
            a=a-b;
    }
    cout <<"nod="<<a;
    system("pause");         
    return 0;               
}
fishec
 Аватар для fishec
118 / 118 / 30
Регистрация: 07.09.2013
Сообщений: 338
09.04.2014, 22:08     Даны два числа. Найти их наибольший общий делитель #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
int nod(int a, int b) {
    return b == 0 ? a : nod(b, a % b);
}
int main(){
    int a, b;
    cin >> a >> b;
    cout << nod(a, b) << endl;
}
Yandex
Объявления
09.04.2014, 22:08     Даны два числа. Найти их наибольший общий делитель
Ответ Создать тему
Опции темы

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